設定ファイルがクラスパス上にないmaven/springアプリケーションを引き継ぎます。つまり、アプリケーションがデプロイされたときの設定を容易にするために、jarファイルの隣にあるmaven-assembly-pluginによってconfigフォルダがコピーされます。実行時にクラスパスから設定ファイルを参照する方法(IDEで)
私の問題は、私は私のIDE(IntelliJの)の中から、このアプリを実行するために、これらの設定ファイルを必要とする、そしてもちろん、春はアセンブリは、「アプリケーション・PROD」または「どちらかを取る
Could not load properties; nested exception is java.io.FileNotFoundException: class path resource [application.properties] cannot be opened because it does not exist
に不平を言っているということですパッケージ化時に使用されたMavenプロファイルに応じて、 "application-test" .propertiesを作成し、/ configフォルダに "application.properties"としてコピーします。
私の質問は: 私は(理想的にはMavenのプロファイルに応じ)クラスパスで利用可能なこの「application.properties」ファイルを持っているために何をすべきかを、プロジェクトをいじりなしで、IntelliJのでアプリケーションを実行している場合構造?
私は、ランチャーのパラメータとしてプロパティファイルを与えることが解決策になると思いますが、どうすればよいかわかりません。だからここ
は単純化されたプロジェクト構造は次のとおりです。
|-- src/
| |-- main/
| | |-- assembly/
| | | |-- bin.xml
| |
| | |-- config/
| | | |-- images/
| | | |-- application-prod.properties
| | | |-- application-test.properties
| |
| | |-- java/...
| | | |-- gui/
| | | | |-- Application.java
| |
| | |-- resources/
| | | |-- context/
| | | | |-- context.xml
| |
| | | |-- fxml/
| | | | |-- welcome.fxml
| |
| | | |-- gui.properties
| |
|-- pom.xml
感謝します。
あなたはスプリングブーツを使用していますか? – kuhajeyan
このhttps://maven.apache.org/shared/maven-archiver/examples/classpath.htmlを参照してください。 –