【问题标题】:Ant Build Failed in EclipseEclipse 中的 Ant 构建失败
【发布时间】:2013-02-07 05:46:46
【问题描述】:

在 Google 中搜索后,我正在使用 ANT 构建我的项目的 jar 文件,发现我参考了thisink 该怎么做。下面是我的 build.xml 文件

<?xml version="1.0" ?> 
<project name="ExcelData" default="compress">

    <target name="init">
        <mkdir dir="build/classes" />
        <mkdir dir="dist" />
    </target>

    <target name="compile" depends="init">
        <javac srcdir="src" destdir="build/classes" />
    </target>

    <target name="compress" depends="compile">
            <jar destfile="dist/ExcelData.jar" basedir="build/classes" />
    </target>

    <target name="execute" depends="compile">
        <java classname="com.spt.excel.data.ExcelData" classpath="build/classes" />
    </target>

    <target name="clean">
        <delete dir="build" />
        <delete dir="dist" />
    </target>

</project>

但问题是 ANT 构建失败了。但我收到错误

D:\Eclipse\workspace\ExcelData\src\com\spt\excel\data\ExcelData.java:24: error: package org.slf4j does not exist`

并引用this 链接设置tools.jar。

谁能告诉我哪里出错了。提前谢谢你。

【问题讨论】:

  • 你在使用 Eclipse 吗?
  • 是的,我正在使用 eclipse

标签: java ant


【解决方案1】:

您的 ant 文件中没有包含库,我的意思是类路径,只需将您的 eclipse 项目包含的所有库添加到 ant 文件中即可,一切都将起作用,请阅读原始教程,如 this one

这样

<javac srcdir="${src.dir}" destdir="${classes.dir}">
    <classpath>
        <pathelement location="${lib.dir}/lib1.jar"/>
        <pathelement location="${lib.dir}/lib2.jar"/>
    </classpath>
</javac>

用于库

<path id="mylibs">
    <fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>

<javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="mylibs" debug="on"/>

添加属性 lib.dir

 <property name="lib.dir"  location="{here is path to your libraries}"/>

【讨论】:

  • 嗨,Sergii,如果我们有很多图书馆,我们需要包括所有这些吗
  • @Rithesh 更新我的答案,顺便说一句,在写东西之前尝试阅读文档。
  • 如果我们给 lib.dir,src.dir 它的错误是 D:\Eclipse\workspace\ExcelData\${lib.dir} not found.
【解决方案2】:

对于 Eclipse,我建议如下:

Right click your project -> Export -> Runnable Jar file 

Pick launch configuration, destination, extract required libraries into JAR, tick Save as ANT script

Finish.

最终你会生成 Jar 文件和可重用的 Ant 脚本。

然后您分析您的 Ant 脚本。

Difference between extracting and packaging libraries into a jar file

【讨论】:

  • 嗨,尼古拉,我想要,通过使用那个 build.xml
  • 从 IDE 创建 ant 文件,如提取等,不提供如何创建真正的构建文件的知识,因为这样的结果问题,我认为,对于作者来说,将是完美的阅读文档ant.apache.com 并创建手动构建文件。但是对于可靠的开发人员来说,您的观点是好的:)。干杯!
  • @SergiiZagriichuk,如果OP没有Ant经验,那么最好先生成有效的Ant脚本。然后为每个生成的 ant 任务阅读文档。我个人是这样做的。这是节省时间:)
  • @NikolayKuznetsov 是的,我同意,这样可以节省时间
猜你喜欢
  • 1970-01-01
  • 2019-02-09
  • 1970-01-01
  • 1970-01-01
  • 2019-03-04
  • 2016-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多