如何解决运行jar文件的“找不到或加载主类”

时间:2019-06-26 09:04:36

标签: java jar ant

好吧,所以我也在stackoverflow上搜索了半天的高点和低点,发现了很多答案,这些答案并没有增加或解决我的问题 我希望这是一个非常基本的newby错误

我在用蚂蚁制作jar文件时遇到问题。

我做了一个测试项目 使用ant编译并捆绑到jar文件中

当我尝试时: java -cp C:\ javaprojects \ ant-jar \ dist \ test.jar com.test.Hello 效果很好

当我尝试java C:\ javaprojects \ ant-jar \ dist \ test.jar 失败,并显示此错误

错误:找不到或加载主类C:\ javaprojects \ ant-jar \ dist \ test.jar 引起原因:java.lang.ClassNotFoundException:C:\ javaprojects \ ant-jar \ dist \ test.jar

jar -tf C:\ javaprojects \ ant-jar \ dist \ test.jar显示:

META-INF/
META-INF/MANIFEST.MF
com/
com/test/
com/test/Hello.class

清单:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.10.6
Created-By: 11.0.3+7 (AdoptOpenJDK)
Main-Class: com.test.Hello
Class-Path: .

ant文件:

    <project name="test" basedir=".">
        <property name="src" location="src" />
        <property name="build" location="build" />
        <property name="dist" location="dist" />

        <target name="compile" description="compile the source">
            <javac srcdir="${src}" destdir="${build}" />
        </target>

        <target name="dist" depends="compile">
            <jar destfile="${dist}/test.jar" basedir="${build}">
                <manifest>
                    <attribute name="Main-Class" value="com.test.Hello"/>
                    <attribute name="Class-Path" value="."/>
                </manifest>
            </jar>
        </target>
    </project>

那我在做什么错了?

谢谢

1 个答案:

答案 0 :(得分:0)

所以要把事情四舍五入 陀螺仪Gearless在注释中得到了答案,而仅仅是调用

java -jar  C:\javaprojects\ant-jar\dist\test.jar

我猜是隧道视觉