我在Google搜索后使用ANT构建了我的项目的jar文件,发现我如何使用this墨水进行操作。下面是我的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链接引用到set tools.jar。
有谁能告诉我哪里出错了。提前谢谢。
答案 0 :(得分:5)
你的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>
for libs
<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}"/>
答案 1 :(得分: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.
最终,您将使用可重复使用的Ant脚本生成Jar文件。
然后分析您的Ant脚本。
Difference between extracting and packaging libraries into a jar file