sirin05137 / CSE364_Project

2 stars 0 forks source link

[Note] Create -jar-with-dependencies.jar file when build the project #22

Closed sirin05137 closed 3 years ago

sirin05137 commented 3 years ago

Instruction에 보면 build된 프로젝트를 실행시키는 command가

java -cp target/cse364-project-1.0-SNAPSHOT-jar-with-dependencies.jar xxx.yyy.YourClass Adventure educator 

임을 알 수 있음.

즉 build가 되었을 때 target directory에 cse364-project-1.0-SNAPSHOT.jar 파일과 cse364-project-1.0-SNAPSHOT-jar-with-dependencies.jar 파일 두 개가 생성되어야 함.

그런데 우리는 build 했을 때 cse364-project-1.0-SNAPSHOT.jar 파일만 생성되는데 이 문제를 해결하기 위해 pom.xml 파일을 수정하였음.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.2-beta-5</version>
    <executions>
        <execution>
            <id>assembly</id>
            <phase>package</phase>
            <goals>
                <goal>assembly</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
</plugin>

위와 같은 코드를 추가 하였는데 이로 인해 cse364-project-1.0-SNAPSHOT-jar-with-dependencies.jar도 생성이 가능해짐. 원래는 pom.xml에 코드를 추가하고 mvn assembly:assembly커맨드로 -jar-with-dependencies.jar 파일을 생성했는데

<execution>
    <id>assembly</id>
    <phase>package</phase>
    <goals>
        <goal>assembly</goal>
    </goals>
</execution>

이 부분을 통해 mvn assembly:assembly커맨드를 입력하지 않고도 -jar-with-dependencies.jar 파일을 생성할 수 있게 해줌.

그러니 이제 build된 프로젝트를 실행할 때 아래와 같은 커맨드로 실행하길 바람

java -cp target/cse364-project-1.0-SNAPSHOT-jar-with-dependencies.jar group11.project Adventure educator 
yuujinleee commented 3 years ago

Thank you... Young jun God..... 😮 👍