Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ant构建文件的问题_Java_Ant_Jar - Fatal编程技术网

Java Ant构建文件的问题

Java Ant构建文件的问题,java,ant,jar,Java,Ant,Jar,我有一个名为test1.java的java文件,其中包含一条SimpleHelloWorld消息 我有一个ANT构建脚本,用于创建jar文件,如下所示: <?xml version="1.0" ?> <project name="test1" default="main"> <target name="main" depends="compile, compress"> <echo> Building the .jar file <

我有一个名为test1.java的java文件,其中包含一条SimpleHelloWorld消息

我有一个ANT构建脚本,用于创建jar文件,如下所示:

<?xml version="1.0" ?>
<project name="test1" default="main">

<target name="main" depends="compile, compress">
<echo>
    Building the .jar file
</echo>
</target>

<target name="compile">
    <javac srcdir="." includeantruntime="false"/>
</target>

<target name="compress">
    <jar jarfile="proj.jar" basedir="." includes="*.class">
            <manifest>
                <attribute name="Main-Class" value="test1"/>
            </manifest>
        </jar>

</target>


</project>
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.0
Created-By: pap64dev-20071008 (SR6) (IBM Corporation)
Main-Class: test1
我建议让“compress”任务依赖于“compile”任务,因为如果先执行“compress”,就不会有要打包的类文件


另外,您是否确定主类的名称真的是“test1”(按照惯例,类名应该以大写字母开头)。

通过降级到Ant 1.8.4解决了这个问题。Ant 1.9似乎不适用于Java 5

我为压缩任务添加了依赖项。在Ant作业完成后,我看到生成的类是
test1.class
Ok,那么在运行jar时,您是否仍然存在完全相同的问题?能否将文件扩展名从.jar更改为.zip,打开它,然后列出里面文件的树状结构?我取消了proj.jar的共享,它有test1.class和META-INF目录。我已经更新了问题中清单文件的内容。你还想让我将文件的扩展名从.jar.dunno改为.zip吗,对我来说是可行的,就像普通的香草hello世界类一样。如果我取消jar创建,我会看到名为test1.classIs的类文件是在您的类中声明的包吗?你能展示你的类的内容吗?不,我没有包声明。它只是一个简单的java类