我想将 Intellij 设置为使用 maven 从命令行自动执行我正在执行的操作,即运行mvn package -DskipTests
以重建我的 jar 并运行Appassembler Maven 插件以生成我的可运行脚本。理想情况下,我想要它做的就是热更新我已更改的 jar 中的类。
我已经想出了如何告诉 Intellij 使用 Project Structure 中的 Artifact 选项卡创建 jars,但是我可以让 Intellij 从 pom 导入此工件信息而不是我手动设置它吗?
- 它会自动导入 pom 更改,但从未导入此工件信息。
- 这将使它能够使用 maven 生成的确切输出名称,这样无论我是在命令行还是 IDE 中工作,我都可以使用一组输出。(原因如下)
Appassembler添加了一个额外的步骤,其中包括将所有依赖项复制到其目标文件夹并生成脚本。如果 Intellij 无法触发 Appassembler,我想也许 Appassembler 可以使用符号链接,当 jar 更新时,我的可运行应用程序脚本将立即使用该版本。或者在更糟糕的情况下,我只需要从命令行运行这个特定的步骤,jar 已经构建好了。
更新
如果它有帮助,这是我在我的应用程序组装器中使用的方式pom.xml
:
<build>
<plugins>
<plugin>
<executions>
<execution>
<id>package</id>
<goals>
<goal>assemble</goal>
</goals>
</execution>
</executions>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.2.2</version>
<configuration>
<programs>
<program>
<mainClass>com.foo.bar.Foobnobicator</mainClass>
<name>gofoo</name>
</program>
</programs>
</configuration>
</plugin>
</plugins>
</build>
感谢您提供有关实现此目标的最佳方法的建议。