Это моя структура проекта
SampleProject(parent)
|-- Calculator(packing:jar, child1)
|-- Gui(packing:jar, child2)
В графическом интерфейсе я хочу использовать классы из дочернего модуля Calculator
.Это означает, что мне нужно сначала выполнить clean install
операцию с Calculator
, а затем добавить Calculator
проект в качестве зависимости в Gui
pom-файле.Это создаст Calculator.jar
в Maven Dependencies
проекта Gui
.Это прекрасно работает, когда я делаю все вручную (нажав на калькулятор проекта и выполнить install
).
Я хочу следующее: поскольку у меня есть Gui
с button
, когда я нажимаю на button
, он должен выполнить clean install
для Calculator
проекта, и jar
будетгенерироваться.Я могу сделать это, когда я работаю на локальной машине (не выпуская окончательную банку Gui
).Это мой код для программного выполнения операции maven
@FXML
private void handleProject() {
project.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
MavenCli cli = new MavenCli();
cli.doMain(new String[] { "clean", "install" }, "../Calculator", System.out, System.out);
}
});
}
Проблема, связанная с описанным выше подходом, заключается в том, что я указываю путь модуля child
для выполнения операции maven.Таким образом, он работает на локальной машине (не выпуская окончательную банку).Но когда я выпускаю и запускаю файл jar.Это дает мне ошибку о Unable to find Calculator
.
Есть ли способ выполнить операцию сборки на одном дочернем модуле другого потомка с помощью программы Java?
Спасибо