Make a Java Jar File Executable

Let’s say you’ve a Java mission as follows:

package deal ms.ao.one thing;
public class MyProject {
    public static void foremost(String...args) throws Exception {
        System.out.println("Hey world!");
    }
}

Now you need to construct this and make it a self contained executable Jar.

When you do a mvn clear set up or mvn clear package deal, and attempt to run it as follows:

java -jar goal/my-java-1.0-SNAPSHOT.jar

You’ll get the next error:

no foremost manifest attribute, in goal/my-java-1.0-SNAPSHOT.jar

Resolve no foremost manifest attribute error#

You possibly can resolve this error by including the next in your pom.xml file:

<construct>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <model>3.1.1</model>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <classpathPrefix>lib/</classpathPrefix>
                        <mainClass>ms.ao.one thing.MyProject</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</construct>

Now construct your answer like this:

mvn clear set up package deal

Then run your standalone Jar as follows:

java -jar goal/my-java-1.0-SNAPSHOT.jar