Skip to content

diplomit-dtu/MavenJarGuide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Guide: Byg executable .jar-fil med Maven

Senest opdateret 07/09-2020

Dette er en kort guide til at bygge en executable .jar-fil med Maven.

Hvad er en executable .jar-fil?
En .jar fil er Java-filer der er kompileret, og samlet til én fil (.jar-filen). Denne fil kan bruges som:

  • et bibliotek til andre Java-programmer
  • et eksekverbart program (executable jar)

Vær opmærksom på:

  • Det forventes at du bruger IntelliJ IDEA
  • Det forventes at du ved hvordan man laver et Maven-projekt i IntelliJ
  • Guiden er lavet ud fra IntelliJ IDEA 2020.2.1 (Ultimate Edition), samt JDK 14, men det burde også virker på lavere versioner
  • Dette .git-repo er et eksempel på resultatet fra guiden, og kan klones og direkte afprøves på din egen computer

Guide

1. Lav et Maven-projekt i IntelliJ eller benyt ét du allerede har lavet


2. Opdatér din pom.xml:

  • Kopiér følgende ind i din pom.xml-fil:
     <build>
         <plugins>
             <plugin>
                 <artifactId>maven-assembly-plugin</artifactId>
                 <configuration>
                     <archive>
                         <manifest>
                             <!-- Full name of class containing main function to run -->
                             <mainClass>mypackage.Main</mainClass>
                         </manifest>
                     </archive>
                     <descriptorRefs>
                         <descriptorRef>jar-with-dependencies</descriptorRef>
                     </descriptorRefs>
    
                     <!-- Optional: Stops 'jar-with-dependencies' to be appended the .jar's name -->
                     <appendAssemblyId>false</appendAssemblyId>
    
                     <!-- Optional: Sets a custom name for the jar file -->
                     <!-- <finalName>MyCustomFileName</finalName> -->
                 </configuration>
                 <executions>
                     <execution>
                         <id>make-assembly</id>
                         <phase>package</phase>
                         <goals>
                             <goal>single</goal>
                         </goals>
                     </execution>
                 </executions>
             </plugin>
         </plugins>
     </build>

    Se på pom.xml i dette projekt for at se, hvor det skal kopieres hen.


3. Tilføj din "Main"-klasse:

  • Ret værdien i elementet <mainClass>mypackage.Main<mainClass> i din pom.xml fra mypackage.Main til det fulde navn på klassen, der indeholder den main-metode du gerne vil køre, når jar-fil skal køres.

    Det fulde navn består af klassen (og dermed filens) navn, samt navnet på pakken, som klassen ligger i. Hvis f.eks. din klasse hedder Program.java, og ligger i mappen src/main/java/mypackage/myotherpackage/Program.java er det fulde navn mypackage.myotherpackage.Program, og der skal derfor stå <mainClass>mypackage.myotherpackage.Program<mainClass>


4. Husk at reload dit Maven-projekt:

  • Højre klik på pom.xml og tryk Maven → Reload project

5. Byg dit Maven-projekt:

  • Åben Maven-vinduet ved at trykke View → Tool Windows → Maven i toolbar'en i toppen af IntelliJ

  • I det åbnede vindue gå ind under Lifecycle og dobbelt-klik på package - din .jar-fil bliver nu bygget til target mappen i dit projekt!


6. Done!

  • Din .jar fil kan køres som en helt almindeligt jar-fil (f.eks. fra terminalen).


Detaljer

  • .jar-filen bliver ikke bygget når du kører dit projekt som normalt (dvs. ved at trykke på den grønne pil)

  • Din .jar-fil navngives efter dit <artifactId> samt <version> i pom.xml. Du kan navngive den efter eget valg ved at fjerne kommentaren <finalName> og indsætte dit nnavn dér

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages