Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins Build在使用Maven编译java代码时失败_Maven_Deployment_Jenkins - Fatal编程技术网

Jenkins Build在使用Maven编译java代码时失败

Jenkins Build在使用Maven编译java代码时失败,maven,deployment,jenkins,Maven,Deployment,Jenkins,我有一个Java应用程序,我能够在CLI上使用maven编译它,我有两个构建脚本将Java代码部署到远程服务器,并使用maven编译代码,但不幸的是,在使用Jenkins的构建脚本编译它时,构建失败。当我尝试在远程服务器上编译代码时,构建成功。错误日志如下所示: [WARNING] The POM for org.im4java:im4java:jar:1.3.2 is missing, no dependency information available [WARNING] The POM

我有一个Java应用程序,我能够在CLI上使用maven编译它,我有两个构建脚本将Java代码部署到远程服务器,并使用maven编译代码,但不幸的是,在使用Jenkins的构建脚本编译它时,构建失败。当我尝试在远程服务器上编译代码时,构建成功。错误日志如下所示:

[WARNING] The POM for org.im4java:im4java:jar:1.3.2 is missing, no dependency information available
[WARNING] The POM for com.aliyun:aliyun-openservices:jar:1.0.0-20120705 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] GuestPath Project ................................. SUCCESS [5.183s]
[INFO] guestchat biz module .............................. FAILURE [4.001s]
[INFO] GuestChat Web Common .............................. SKIPPED
[INFO] GuestChat Portal Webapp ........................... SKIPPED
[INFO] guestchat openapi Webapp .......................... SKIPPED
[INFO] guestchat chat server ............................. SKIPPED
[INFO] guestchat service dashboard Webapp ................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10.518s
[INFO] Finished at: Wed Sep 19 10:49:39 CST 2012
[INFO] Final Memory: 9M/23M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project guestchat-biz:
Could not resolve dependencies for project com.guestops.guestchat:guestchat-biz:jar:1.0.0-SNAPSHOT:
The following artifacts could not be resolved:
org.im4java:im4java:jar:1.3.2, com.aliyun:aliyun-openservices:jar:1.0.0-20120705:
Failure to find org.im4java:im4java:jar:1.3.2 in http://repo.maven.apache.org/maven2
was cached in the local repository, resolution will not be reattempted until
the update interval of central has elapsed or updates are forced -> [Help 1]

我希望我说得够清楚,非常感谢您的帮助。我可以提供更多的细节,如果需要..提前感谢

2种可能的快速解决方案:

  • 如果它在本地编译,那么转到Jenkins上的构建配置,并选中“Poll SCM”选项对每个构建进行轮询

  • 从Jenkins服务器上的命令行运行
    mvn clean install
    ,并确保构建后maven存储库中的工件可用。如果没有,请下载相关版本的JAR并将其放入本地maven存储库(Jenkins服务器上)


  • 祝你好运

    我认为你应该试着做以下几点:

  • 尝试在本地编译项目,但确保您正在从maven存储库下载工件。您可以通过重命名~user/.m2/存储库并运行“mvn clean install”来完成此操作

  • 如果编译-本地maven配置正确,这不是pom.xml问题。此外,远程存储库也在maven中正确配置。在这种情况下,这是一个jenkins问题,或者更确切地说是与jenkins安装在同一台机器上的maven问题,或者可能是一些与网络/安全相关的问题(例如到远程存储库的连接是防火墙连接的,无法从jenkins机器访问等等)

  • 我建议您在该maven上签出存储库配置,或者如果您想在jenkins机器上签出项目的源代码,并从该机器手动运行上面描述的第一步。您应该看到代码无法编译,并且会得到与现在相同的错误

    现在,如果在第1步中,项目无法编译——这仅仅是因为您对缺少的模块有依赖关系,并且它们以某种方式出现在您的本地存储库中(我以前假设它可以在本地编译),并且由于我们正在运行一个干净的安装,本地存储库“被清除”。在这种情况下,您应该找出依赖项的来源。 诸如此类

    mvn依赖关系:故障模块上的树

    这可能会有帮助


    希望这会有所帮助这是错误消息告诉您的:

    无法解析以下工件: org.im4java:im4java:jar:1.3.2, com.aliyun:aliyun openservices:jar:1.0.0-20120705:查找失败 org.im4java:im4java:jar:1.3.2 in

    因此,您在pom中有im4java 1.3.2和aliyun openservices 1.0.0-20120705的参考资料,但在一般maven repo中找不到这些参考资料。如果你做了一个测试,你会看到这一点,所以它失败是合理的。aliyun openservices包根本不存在

    那么,这些应该在哪里找到呢?也许您只在本地安装了它们,而没有安装到Jenkins机器上

    那么你能做的就是

  • (建议)设置一个内部网maven repo,在其中部署所需的库并引用该库或
  • 在运行Jenkins的机器上本地安装它们
  • 这两个版本都可以解决问题。

    快速查看,只有1.2.0版可用,而不是1.3.2版(您正在使用)

    您的代码是否使用maven构建进行编译


    我建议您尝试查看jenkins实例上的存储库设置

    尝试执行mvn clean Install尝试执行此操作,我收到了相同的错误!在远程系统上部署和编译时,它和安全性有什么关系吗?因为我在远程系统上手动编译没有任何问题。感谢您的回复,尽管与问题中提到的库相对应的.pom文件在存储库中不可用。如果它不在那里,它会尝试下载它,否则它会失败。@asgs是的,我理解,但为什么它会发生在我使用jenkins部署和编译时,而不是在远程系统上运行“mvn compile”时?你说它在本地编译,对吗?然后,转到Jenkins上的构建配置,并检查“Poll SCM”选项以对每个构建进行轮询。最终发现,这是一个安全问题。谢谢mcuh的帮助@有什么安全问题吗?你能在这里详细说明答案吗?这里提供的信息并不意味着有任何安全问题。谢谢大家的即时回答