Heim  >  Artikel  >  Java  >  Wie führt Springboot das JAR-Paket aus, um externe Konfigurationsdateien zu lesen?

Wie führt Springboot das JAR-Paket aus, um externe Konfigurationsdateien zu lesen?

WBOY
WBOYnach vorne
2023-05-21 14:40:063120Durchsuche

Methode 1: Legen Sie die Konfigurationsdatei mit einem relativen Pfad fest
(1) Erstellen Sie die Konfigurationsdatei conf.properties im selben Verzeichnis wie das JAR-Paket und schreiben Sie die Konfigurationsdaten:

confData=data

(2) Beginnen Sie mit dem Schreiben des automatisierten Testcodes.

//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);
    }
}

(3) Führen Sie das JAR-Paket aus Methode zum manuellen Ausführen des JAR-Pakets im gleichen Verzeichnis des JAR-Pakets. Wenn wir jedoch die Crontab-Datei des Linux-Systems für die geplante Planung verwenden, tritt ein Fehler auf. Der Grund: Wenn wir ein Skript manuell ausführen, wird es ausgeführt In der aktuellen Shell-Umgebung kann das Programm die Umgebungsvariablen finden. Wenn das System automatisch die Aufgabenplanung ausführt, werden außer der Standardumgebung keine weiteren Umgebungsvariablen geladen. Daher müssen Sie alle für die Ausführung der Aufgabe erforderlichen Umgebungsvariablen in der Crontab-Datei angeben oder im Programm absolute Pfade verwenden.

(1) Erstellen Sie die Konfigurationsdatei conf.properties im selben Verzeichnis wie das JAR-Paket und schreiben Sie die Konfigurationsdaten:

confData=data


(2) Beginnen Sie mit dem Schreiben des automatisierten Testcodes

//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);
    }
}

(3) Ausführen das jar-Paket

java -jar jarNanexxx

Das obige ist der detaillierte Inhalt vonWie führt Springboot das JAR-Paket aus, um externe Konfigurationsdateien zu lesen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen