通过从远程存储库中提取jar文件来执行jar文件

时间:2017-01-06 08:32:32

标签: java maven maven-3 artifactory

我有一个maven项目,我在私有远程存储库上构建和部署。代码是通过持续集成管道构建的。

可以从我的远程计算机访问此存储库。我想要的是拉动工件并在这个远程机器上执行它而不需要拉动项目的源代码。

根据我的理解,人们需要一个包含此repo的pom文件作为依赖项,但是他们可以通过其他任何方式执行相同操作而无需下载源

3 个答案:

答案 0 :(得分:3)

如果您可以将一个文件下载到Artifactory(我假设您正在使用标签中的artifactory),则可以使用简单的http get请求(通过Artifactory REST API)下载该文件,像卷曲,甚至使用JFrog cli。

我建议使用CLI:https://www.jfrog.com/confluence/display/CLI/CLI+for+JFrog+Artifactory

要直接使用Artifactory REST API,请访问: https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API

检索Artefact api或检索最新的人工制品可能会有所帮助。

答案 1 :(得分:1)

如果安装了maven,只需使用CLI下载文件即可。下面是一个示例命令。

call mvn org.apache.maven.plugins:maven-dependency-plugin:2.4:get -DrepoUrl=<your nexus url> -Dartifact=<groupid>:<artifactid>:<version>:jar:jar-with-dependencies -Ddest=<destination>

答案 2 :(得分:1)

您是否尝试过exec-maven-plugin? http://www.mojohaus.org/exec-maven-plugin/examples/example-exec-for-java-programs.html 那就是如果你想用Maven做这个工作(如果你不想在你的远程机器上使用Maven,那对我来说不是很清楚。)

注意:重新打包可执行jar中的依赖项不是一个好习惯。您仍然可以与jar一起构建分发存档(查看maven-assembly-plugin https://maven.apache.org/plugins/maven-assembly-plugin/)并使用该存档。