【问题标题】:Javac inexplicably failing on HudsonJavac 在 Hudson 上莫名其妙地失败了
【发布时间】:2017-05-05 06:55:19
【问题描述】:

我们的应用程序是由我的 Hudson 使用 Ant 脚本构建的。在我最近的工作中,我最近加入了 Maven。现在 Hudson 的构建过程在没有任何解释的情况下到达编译任务时失败。

Hudson 构建:

[echo] Using Maven Repo at ../.maven/repo/
[javac] Compiling 134 source files to C:\Users\administrator1\.hudson\jobs\SAP_RC\workspace\current\classes

BUILD FAILED
C:\Users\administrator1\.hudson\jobs\SAP_RC\workspace\current\build.xml:68: Error running C:\Program Files (x86)\Java\jdk1.8.0_66\bin\javac.exe compiler

蚂蚁脚本:

<javac classpathref="lib" destdir="${classesDir}" debug="true" debuglevel="lines,vars,source" verbose="true" fork="true" nowarn="true" memoryMaximumSize="320m" srcdir="${srcDir}" includeantruntime="false"  />

我专门将 Maven 存储库包含在类路径中,这就是它莫名其妙地失败的时候。当我删除 Maven 存储库时,构建会引发编译错误,抱怨它找不到 Maven 依赖项。这让我怀疑我达到了一些类路径长度限制。

我这样做是因为我不确定将 Maven 依赖项包含到类路径中的正确方法是什么。如果有更好的方法请告诉我,我会专门为此开一个新问题。

【问题讨论】:

    标签: java maven jenkins ant hudson


    【解决方案1】:

    似乎我的文件集中的通配符是罪魁祸首。

    <path id="lib">
            <fileset dir="${env.maven_repo}">
                <include name="*/**"/>
            </fileset>
    </path>
    

    我将 ** 更改为 *.jar 并且构建过程不再(莫名其妙地)失败。

    <path id="lib">
            <fileset dir="${env.maven_repo}">
                <include name="*/*.jar"/>
            </fileset>
    </path>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-12
      • 2013-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多