[英]How to add a local non-maven project as a dependency for a maven project?
[英]How to have the equivalent of main/resources in a non-Maven project?
我試圖在Github上基於該項目對我的項目進行建模。
public class DroolsPlannerPoCApp {
....
private static final String SOLVER_CONFIG = "/ServiceDeliverySolverConfig.xml";
....
private Solver createSolver() {
XmlSolverConfigurer configurer = new XmlSolverConfigurer();
configurer.configure( SOLVER_CONFIG );
return configurer.buildSolver();
}
SOLVER_CONFIG
中提到的文件位於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();
}
}
失敗了。
jesvin@Jesvin-Technovia:~/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)
我知道main/resources
對Maven builds有意義 。 但是我正在手動構建項目。
問題:如何在自己的項目中實現同一件事(通過資源)? 我必須在哪里放置文件,我必須在SOLVER_CONFIG中指定什么?
該函數本身實現為:
public XmlSolverConfigurer configure(String resource) {
return configure(getClass().getResourceAsStream(resource));
}
將資源放在類路徑上,例如,在源目錄中。
Maven所做的只是將src/main/resources
包/目錄樹合並到目標類路徑中,並保持相同的包/文件夾布局。
如果手動構建,則需要將資源手動復制到類路徑中,即,將XML文件復制到生成的類目錄的根路徑中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.