无法找到或加载主类(良好的类路径,良好的清单,良好的类)

时间:2017-03-04 20:13:47

标签: java jar execution

以下是我遇到的错误:“无法找到或加载主类MCP ”。

我的项目结构如下:

- src (directory containing the sub-directory (and package) "tp2" containing the source files (their package is "tp2")).
- class (directory containing the directory (and package) "tp2" containing the class files)
- META-INF (directory containing "MANIFEST.MF" (only one line : "Main-Class: tp2.MCP")).
  1. 我正在使用javac src/tp2/*.java -d class构建项目。
  2. 我使用jar cfmv MCP.jar META-INF/MANIFEST.MF class/tp2/
  3. 创建了我的“.jar”
  4. 我想告诉您,我已在./class添加了CLASSPATH
  5. 然而,错误仍然存​​在......当我jar -tf MCP.jar时,我有:

    META-INF/
    META-INF/MANIFEST.MF
    class/tp2/XXYYZZ.class
    class/tp2/MCP.class
    

    执行时似乎没有正确读取类路径?

1 个答案:

答案 0 :(得分:0)

您的jar文件包含class目录。因此,它被视为包名称的一部分。

创建jar时使用-C标志

java cfmv MCP.jar META-INF/MANIFEST.MF -C class .

来自man jar

  

-C dir在处理以下inputfiles参数时暂时将目录更改为dir。允许多个-Cir输入文件集