首页 / JAVA / java-jar文件的ANT问题
java-jar文件的ANT问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-jar文件的ANT问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1845字,纯文字阅读大概需要3分钟。
内容图文
我在生成有效的jar文件时遇到问题.我想得到一个可以通过使用命令java -jar myjar.jar自行运行的jar文件
到目前为止,我有
<project default="jar" name="Create Runnable Jar fecrudbreset">
<target name="clean">
<delete dir="bin"/>
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="./build"/>
<javac srcdir="./src" destdir="./build">
<classpath>
<pathelement location="./lib/sqljdbc4.jar"/>
</classpath>
</javac>
</target>
<target name="jar" depends="compile">
<mkdir dir="./bin"/>
<jar destfile="./bin/fecrudbreset.jar" >
<manifest>
<attribute name="Main-Class" value="FecruDBreset"/>
<attribute name="Class-Path" value="."/>
<attribute name="Built-By" value="${user.name}"/>
</manifest>
<fileset dir="./build"/>
<zipfileset dir="./lib" includes="sqljdbc4.jar"/>
</jar>
</target>
</project>
但是,当我尝试运行应用程序时,编译工作正常,但出现以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/microsoft/sqlserver/jdbc/SQLServerDataSource
at FecruDBreset.main(Unknown Source)
更新:
我的主类使用默认程序包.该类已找到并开始运行,但是在无法找到似乎是SQL驱动程序时失败.我想我不明白为什么找不到它.
这是定义主类的方式:
import java.sql.*;
import com.microsoft.sqlserver.jdbc.*;
public class FecruDBreset
{
/*
* Used to reset / nuke fecru database
*/
public static void main(String[] args)
{
另外,如果我解压缩生成的jar文件,其内容如下所示:
META-INF/
META-INF/MANIFEST.MF
FecruDBreset.class
sqljdbc4.jar
更新2:我的源代码树如下所示:
|-- bin
| `-- fecrudbreset.jar
|-- build
| `-- FecruDBreset.class
|-- build.xml
|-- lib
| `-- sqljdbc4.jar
|-- readme.txt
`-- src
`-- FecruDBreset.java
有人知道我在做什么错吗?在此先感谢.
乍得
解决方法:
@chadneal: Also if I unzip the jar file that is produced the contents look like this:
META-INF/
META-INF/MANIFEST.MF
FecruDBreset.class
sqljdbc4.jar
主Jar不能包含sqljdbc4.jar.而是应将对那个Jar的引用添加到清单中的class-path中.
内容总结
以上是互联网集市为您收集整理的java-jar文件的ANT问题全部内容,希望文章能够帮你解决java-jar文件的ANT问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。