私のプロジェクトでresources
からファイルをインポートしようとしています。私はSOLVER_CONFIG
を指定してresources
のルートからsolver.xml
を取得しました。`resources`ディレクトリからファイルが検出されません
package in.co.technovia.sudoku;
import java.util.ArrayList;
....
public class App{
private static final String SOLVER_CONFIG = "/solver.xml";
public static void main(String[] args){
SudokuGenerator sg = new SudokuGenerator();
....
}
private static Solver createSolver(){
XmlSolverConfigurer configurer = new XmlSolverConfigurer();
configurer.configure(SOLVER_CONFIG);
return configurer.buildSolver();
}
}
resources
のルートからsolver.xml
を取ることになっています。それはthis caseで動作しますが、気まぐれのJava神は私のプロジェクトのためにそう命じ:
[email protected]:~/dev/drools/sudoku$ java in.co.technovia.sudoku.AppException in thread "main" java.lang.IllegalArgumentException: The solver configuration (/solver.xml) does not exist.
at org.drools.planner.config.XmlSolverConfigurer.configure(XmlSolverConfigurer.java:79)
at in.co.technovia.sudoku.App.createSolver(App.java:67)
at in.co.technovia.sudoku.App.main(App.java:43)
質問:なぜresources
からファイルを検出ありえないJavaの?
私はsrc/main/java/in/co/technovia/sudoku/
アプリケーションとsrc/main/resources/
ディレクトリと現在のクラスパスの内容が含まれています。
[email protected]:~/dev/drools/sudoku$ ls src/main/resources/
score.drl score.drl~ solver.xml solver.xml~
[email protected]:~/dev/drools/sudoku$ ls src/main/java/in/co/technovia/sudoku/
App.class App.java~ helloworld.class helloworld.java~
App.java domain helloworld.java solution
[email protected]:~/dev/drools/sudoku$ export | grep CLASSPATHdeclare -x
CLASSPATH=".:/home/jesvin/dev/drools/sudoku/binaries/*:/home/jesvin/dev/drools/sudoku/src/main/java"
ソリューション:khmarbaiseは彼の答えで述べているとして、ディレクトリはMavenのビルドのためのものです。ディレクトリを含めるには、 'https://stackoverflow.com/a/9045680/604511'を参照してください。
"これはMavenビルドの意図です"しかし、[このプロジェクト](https://github.com/diega/drools-planner-poc/tree/master/src/main)私はモデリングしていません。 Mavenビルド。 – aitchnyu
はい、リソースは既に使用されています[記述したように](http://grepcode.com/file/repository.jboss。org/maven2/org.drools.solver/drools-solver-core/5.0.0.M5/org/drools/solver/config /XmlSolverConfigurer.java#XmlSolverConfigurer.configure%28java.lang.String%29)しかし、それを正しい場所に向けるのですか? – aitchnyu