Maison > Java > javaDidacticiel > le corps du texte

Comment Springboot exécute-t-il le package jar pour lire les fichiers de configuration externes ?

WBOY
Libérer: 2023-05-21 14:40:06
avant
3101 Les gens l'ont consulté

Méthode 1 : Définir le fichier de configuration avec un chemin relatif
(1) Créez le fichier de configuration conf.properties dans le même répertoire que le package jar et écrivez les données de configuration :

confData=data

(2) Commencez à écrire le code de test automatisé

//from www.fhadmin.cn
public class Test{
    public String getData() throws IOException {
        //读取配置文件
        Properties properties = new Properties();
        File file = new File("conf.properties");
        FileInputStream fis = new FileInputStream(file);
        properties.load(fis);
        fis.close();

        //获取配置文件数据
        String confData = properties.getProperty("confData");
        System.out.println(confData);
    }
}
Copier après la connexion

(3) Exécutez le package jar

java -jar jarNanexxx

Méthode 2 : définir le fichier de configuration avec un chemin absolu
Résoudre le problème : il n'y a aucun problème lors de l'utilisation du chemin relatif méthode pour exécuter manuellement le package jar dans le répertoire de même niveau du package jar. Cependant, lors de l'utilisation du fichier crontab du système Linux pour la planification planifiée, une erreur se produit. La raison : parce que lorsque nous exécutons manuellement un script, il est exécuté. dans l'environnement shell actuel, et le programme peut trouver les variables d'environnement ; lorsque le système exécute automatiquement la planification des tâches, en plus de l'environnement par défaut, aucune autre variable d'environnement ne sera chargée. Par conséquent, vous devez spécifier toutes les variables d'environnement requises pour la tâche exécutée dans le fichier crontab ou utiliser des chemins absolus dans le programme.
(1) Créez le fichier de configuration conf.properties dans le même répertoire que le package jar et écrivez les données de configuration :

confData=data

(2) Commencez à écrire le code de test automatisé

//from www.fhadmin.cn
public class Test{
    public String getData() throws IOException {
       //获取jar包同级目录
        String path = this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath();
        String[] pathSplit = path.split("/");
        String jarName = pathSplit[pathSplit.length - 1];
        String jarPath = path.replace(jarName, "");
        String pathName=jarPath+"minhang.properties";
        System.out.println("配置文件路径:"+jarPath);

        //读取配置文件
        Properties properties = new Properties();
        File file = new File(pathName);
        FileInputStream fis = new FileInputStream(file);
        properties.load(fis);
        fis.close();

        //获取配置文件数据
        String confData = properties.getProperty("confData");
        System.out.println(confData);
    }
}
Copier après la connexion

(3) Exécutez le package jar

java -jar jarNanexxx

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal