【发布时间】:2026-01-04 09:30:01
【问题描述】:
我有两个 java 项目,animal 项目和 animal-test 项目。在 animal 项目中,我有一个名为 Animal 的注释界面,如下所示
Animal.java
package com.animal;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface Animal{
String name();
}
除此之外,我还有一个接口 MakeSound.java,它有一个名为 makesSound() 的方法。
现在我已经构建并创建了包含依赖项的 animal jar 文件,然后我在第二个项目 animal-test 中导入了 animal.jar >。我创建了一个名为 AnimalTest.java 的类 我现在构建并创建了一个 jar 文件 animal-test.jar 并且当我运行像 java -jar animal-test.jar 这样的 jar 文件时,我得到了以下异常 p>
no main manifest attribute, in animal-test.jar
谁能帮帮我。
【问题讨论】:
-
看起来主类属性在
META-INF/MANIFEST.MF中不存在你能检查一下Main-Class: com.animal.AnimalFinder条目是否存在于jar 中的MANIFEST.MF 文件中吗? -
你是如何创建 jar 的?
-
@JerinJoseph 我正在使用`mvn clean install`
-
@JerinJoseph 我正在导入两个罐子,
animal-1.0.jar和animal-1.0-jar-with-dependencies.jar。在animal-1.0.jar中什么都没有,但在animal-1.0-jar-with-dependencies.jar我有Main-Class: com.animal.AnimalFinder -
您也需要动物试验罐中的清单。检查我的答案。
标签: java maven reflection jar dependencies