使用“本机”Apache Maven插件在jar文件的开头注入脚本以使jar成为可执行文件的更简单的方法是什么?
实际上,任何将构建的jar文件“编辑”为常规文件并将其与另一个文件连接的方法都可能奏效。比如下面的shellcat
示例:
$ cat ${projectRoot}/src/main/stubs/runstub.sh target/${builtJarPath} > target/${builtJarPathWithoutExtention}-autorun.jar
$ chmod +x target/${builtJarPathWithoutExtention}-autorun.jar
如果您想知道在一个jar文件的开头注入一个shell脚本的原因,请查看internet上关于“将jar文件转换为Linux可执行文件”的信息,示例:
您可以使用exec-maven-plugin
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<executions>
<execution>
<id>Inject stub</id>
<phase>install</phase> <!-- Select a phase that is after package generation -->
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${basedir}/scripts/inject-stub.sh</executable>
</configuration>
</execution>
</executions>
</plugin>
> DAO层类型:jar Rest服务层类型:war,依赖:DAO{scope:default,type:jar}
我正在使用IntelliJ 2016,我成功添加了一些Maven依赖项(用于ImageJ插件开发),这两个外部库以jar文件的形式显示。我已经在项目结构中添加了它们- 其中一个正在成功导入,而另一个没有。有效的在jar的子文件夹中 导入fiji.threshold.Auto_Local_Threshold 另一个就在罐子下面,当我尝试时,名字无法识别: 导入MultipleKymograph_ 我
我这里有一个小问题:使用MAVEN和Cucumber运行这个项目。 在我的MAVEN项目中,我采用以下结构: 类如下所示: 类类似于以下内容: 我试着跑: 而且它不起作用。 我想使用Maven运行这些测试,并知道是否有可能设置cucumber测试的执行顺序。 我试图在@CucumberOptions中定义功能参数,但它不起作用! 和 并尝试这样做(如其他帖子所建议的): 在surefire插件配置
问题内容: 我使用.jar开发一个项目以重用代码。 因此,我在名为TOOLS.jar的.jar上进行了开发,并在文件HelloWorld.java中开发了一个简单的应用程序,该应用程序从TOOLS.jar引用了我的软件包TOOLS。 我使用以下命令行进行编译: 成功,当我想执行我的应用程序时,我使用以下命令(位于C:\ MyApp文件夹中): 成功了,但是我的问题是: 当我有多个外部.jar文件时
问题内容: 为了从Java执行python脚本(具有几个命令行参数),我尝试使用的是以下Java代码 例如,我打算执行以下命令: 请注意,参数arg3采用参数值列表。 我面临的问题是我没有找到将值列表传递给参数arg3的方法。 如果有人可以给我一些提示以解决我的问题,我将不胜感激。 我已经进行了搜索,但是找不到适合我需要的答案,如果有人找到正确的链接,请告诉我。 最好! 问题答案: 只需将它们
问题内容: 我有maven- gwt项目。它具有很多依赖,这在大型项目中很常见。我认为这是创建类路径的极限。我发现了有关限制的一些信息。允许为1023个字符。但是我需要图书馆。 我想打包我的项目mit时收到以下错误。 我该如何解决这个问题。 这是詹金斯的扩展错误: 问题答案: 我在这里http://code.google.com/p/gwt- maven/issues/detail?id=88 找