JAR (Java ARchive)

๊ธฐ๋ณธ ๋ช…๋ น์–ด

# JAR ํŒŒ์ผ ์ƒ์„ฑ
jar cvf [์ƒ์„ฑํ• ํŒŒ์ผ๋ช…].jar [ํด๋ž˜์ŠคํŒŒ์ผ]

# JAR ํŒŒ์ผ ๋‚ด์šฉ ํ™•์ธ
jar tf [ํŒŒ์ผ๋ช…].jar

# JAR ํŒŒ์ผ ์‹คํ–‰ (Main-Class ์ง€์ • ํ•„์š”)
java -jar [ํŒŒ์ผ๋ช…].jar

Manifest ํŒŒ์ผ

Manifest-Version: 1.0
Main-Class: com.example.Main

Fat JAR

์ƒ์„ฑ ๋ฐฉ๋ฒ•

  1. Maven

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    
    mvn clean package
    
  2. Gradle

    plugins {
        id 'org.springframework.boot' version '3.x.x'
    }
    
    ./gradlew bootJar
    

์‹คํ–‰ ์˜ต์…˜

# JVM ์˜ต์…˜ ์ง€์ •
java -Xms256m -Xmx512m -jar app.jar

# ํ”„๋กœํ•„ ์ง€์ • (Spring Boot)
java -jar app.jar --spring.profiles.active=prod

# ์‹œ์Šคํ…œ ํ”„๋กœํผํ‹ฐ ์ „๋‹ฌ
java -Dserver.port=8080 -jar app.jar

์ฐธ๊ณ ์‚ฌํ•ญ

What Else?
inflearn react api server -50% ํ• ์ธ์ฟ ํฐ: 20652-ab1f1cd4c373 buy me a coffee