【问题标题】:How to solve "Could not find or load main class" running a jar file [duplicate]如何解决运行jar文件的“找不到或加载主类”[重复]
【发布时间】:2019-11-08 04:16:54
【问题描述】:

好的,所以我也在 stackoverflow 上搜索了一天半的时间,发现很多答案都无法解决或解决我的问题 我希望这是一个非常基本的 newby 错误

我在用 ant 制作 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: .

蚂蚁文件:

    <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>

那我做错了什么?

谢谢

【问题讨论】:

  • 它是java -jar foo/bar.jar
  • .....我能说什么这很尴尬我一直在寻找错误的方向。非常感谢!!!

标签: java jar ant


【解决方案1】:

所以总结一下 Gyro Gearless 在评论中得到了答案,代码没有错,只是调用

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

我猜是隧道视觉

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-21
    • 2020-09-24
    • 2020-02-18
    • 2016-02-16
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 2018-11-01
    相关资源
    最近更新 更多