0

我有一个 intellij 项目,我正在尝试创建 2 个罐子。我已经设置了我的构建文件并运行构建所有工件。然而,只有我的第一个罐子出现了。为了尝试获取更多信息,我运行了命令行命令:ant -buildfile buildfile.xml

结果我得到以下信息:

artifact.jar1:jar:

[mkdir] 创建目录:~/Projects/proj1/__artifacts_temp/jar1_jar

[jar] 构建 jar:~/Projects/proj1/__artifacts_temp/jar1.jar

[复制] 将 1 个文件复制到 ~/Projects/proj1/__artifacts_temp/jar1_jar

artifact.jar2:jar:

[mkdir] 创建目录:~/Projects/proj1/__artifacts_temp/jar2_jar

[jar] 构建 jar:~/Projects/proj1/__artifacts_temp/1/jar2.jar

[复制] 将 1 个文件复制到 ~/Projects/proj1/__artifacts_temp/jar2_jar

所以看起来两个罐子都会被创建。然而......下一个输出更令人沮丧。

build.all.artifacts:

[复制] 将 1 个文件复制到 ~/Projects/proj1

[delete] 删除目录~/Projects/proj1/__artifacts_temp

我完全不知道为什么它只会复制 1 个罐子。任何关于如何获得更多信息的想法或想法将不胜感激。

编辑:这是我的构建脚本的 build.all.artifacts 部分的样子

<target name="build.all.artifacts" depends="artifact.jar1:jar, artifact.jar2:jar" description="Build all artifacts">
  <mkdir dir="${artifact.output.jar1:jar}"/>
  <copy todir="${artifact.output.jar1:jar}">
    <fileset dir="${artifact.temp.output.jar1:jar}"/>
  </copy>
  <mkdir dir="${artifact.output.jar2:jar}"/>
  <copy todir="${artifact.output.jar2:jar}">
    <fileset dir="${artifact.temp.output.jar2:jar}"/>
  </copy>

  <!-- Delete temporary files -->
  <delete dir="${artifacts.temp.dir}"/>
</target>
4

1 回答 1

1

检查buildfile.xml,第一个 jar 应该有一个 < copy > 任务,而不是第二个。

更新:尝试使用<fileset dir="${artifact.temp.output.jar2:jar}" erroronmissingdir="true"/>查看路径是否有问题。还尝试打印路径以检查它们是否正确:

<echo>${artifact.output.jar2:jar}</echo>
<echo>${artifact.temp.output.jar2:jar}</echo>
于 2013-08-09T11:35:56.877 回答