我尝试使用Eclipse Maven构建具有依赖项的jar,但是当我执行时
java -jar App.jar
得到了错误:“未找到主要方法”
我的pom.xml看起来像这样:
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.maventest</groupId>
<artifactId>aproject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>aproject</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
这只是一个简单的Java代码:
package com.maventest.aproject;
public class App {
public static void main( String[] args ) {
System.out.println( "Hello World!" );
}
}
蚀版本:4.5.2
谁能帮我这个?谢谢。
您可以为此目的使用maven-jar-plugin。
<build>
<plugins>
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin.version}</version>
<configuration>
<archive>
<manifest>
<!-- <addClasspath>true</addClasspath> -->
<mainClass>twaren.elk.elkMaven.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
问题内容: 我有以下问题。我的NetBeans IDE 6.8中有一个Java项目。当我编译它并生成一个包含所有可能的.jar文件时,META- INF是不正确的。它不包含要执行的类-使用main()方法。 当我单击IDE内的“运行”按钮时,一切正常。项目的设置也设置正确的方式-指向我的项目中的类。 我尝试添加带有清单文件的META-INF文件夹,但没有进行管理。 有没有一种方法可以在NetBea
我测试了简单的scala程序并用calac编译了它 如果我运行java-cp。;scala图书馆。“jar测试”,它工作正常。是的,scala图书馆。jar文件在同一个目录中。 这是我的清单文件manifest.txt 我用罐子cfm Test.jarmanifest.txt 如果我解压生成的测试。jar文件和打开清单文件,它不包含主类字段。因此,它不能与java-jar测试一起运行。罐子 我可以
问题内容: 我有以下问题。我的NetBeans IDE 6.8中有一个Java项目。当我编译它并生成一个包含所有可能的.jar文件时,META-INF是不正确的。它不包含要执行的类-使用main()方法。 当我单击IDE内的“运行”按钮时,一切正常。项目的设置也设置正确的方式-指向我的项目中的类。 我尝试添加带有清单文件的META-INF文件夹,但没有进行管理。 有没有一种方法可以在NetBean
我已经看了几个不同的线程,没有找到解决方案。我做了一个项目,使用java和Gradle从google sheets检索数据。我已经创建了一个工件,并通过IntelliJ构建了jar文件。当我尝试使用“java-jar filename.jar”通过终端运行jar时,我得到“no main manifest attribute,in filename.jar” My Manifest.mf位于mai
首先,我看了关于这个话题的类似问题。我还没有找到解决办法。 我想把我一直在做的一个小项目分发给朋友和家人。问题是我不能指望他们都能跑。类文件。因此,我正在努力创造一个新的世界。jar文件,我可以将其转换为。exe文件。然而,我遇到了一个问题。它抱怨缺少主清单属性。在谷歌搜索之后,我决定尝试一个小教程。我正在遵循教程(甚至下载了Hello.jar小文件),但仍然没有获得主清单属性。 当我运行Wind
我知道有很多像这样的题目,但我没有找到答案我的问题。我已经在IntelliJ中创建了JAR文件,并在项目结构中构建了工件。在Java文件夹中,我有一个包META-INF和manifest.mf: 那么我是否应该将它手动添加到IntelliJ中的JAR中呢? Edit:CrazyCoder给出了一个很好的说明,说明META-INF应该在resourse文件夹中,但是我的IntelliJ默认设置一开始