ÀϹÝÀûÀ¸·Î pom.xml ÀÇ ½ÃÀÛÀº ¾Æ·¡¿Í °°Àº ÇüÅÂÀÏ °ÍÀÌ´Ù.
¾îÇø®ÄÉÀ̼ǿ¡ ´ëÇÑ groupId, artifactId, version ¼³Á¤Àº ±âº»À¸·Î µé¾î°¥ °ÍÀÌ´Ù.
·±Å¸Àӽà ¿©±â¿¡ ÀÖ´Â version °ªÀ» °¡Á®¿À°íÀÚ ÇÑ´Ù¸é,
1) maven-jar-plugin À» ÅëÇØ MANIFEST.MF ¿¡ ³»¿ëÀ» ±â·ÏÇÏ°í
- war ·Î ÆÐŰ¡ ÇÏ°í ÀÖ´Ù¸é maven-war-plugin À» »ç¿ëÇÏ¸é µÈ´Ù.
- ½ÇÁ¦·Î MANIFEST.MF ¿¡ °ªÀ» ³Ö´Â °ÍÀº apache maven archiver °¡ ÇØÁִµ¥,
- maven-jar-plugin, maven-war-plugin ¸ðµÎ maven-archive ¸¦ °®°í Àֱ⠶§¹®¿¡ µ¿ÀÏÇÑ configuration À» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
2) getClass().getPackage().getImplementationVersion() ·Î ¼Õ½±°Ô ȹµæÇÒ ¼ö ÀÖ´Ù.
Âü°í) spring-boot ¸¦ »ç¿ëÇÏ°í ÀÖ´Ù¸é ÆÐŰ¡À» À§ÇØ spring-boot-maven-plugin À» »ç¿ëÇÏ°í ÀÖÀ»ÅÙµ¥
±×·² °æ¿ì¿¡µµ jar ³ª war ÆÐŰ¡¿¡ µû¶ó maven-jar-plugin, maven-war-plugin À» Ãß°¡ÇØÁÖ¸é Á¦´ë·Î MANIFEST.MF ¿¡ ±â·ÏµÈ´Ù.
¡Ü maven-jar-plugin (or maven-war-plugin) ¼³Á¤ : build - plugins ¾È¿¡ ³Ö´Â´Ù
ÀÌÁ¦ ÀÚ¹Ù Äڵ忡¼ getClass().getPackage().getImplementationVersion() ·Î ¹öÀü Á¤º¸¸¦ ȹµæÇÒ ¼ö ÀÖ´Ù.
getClass().getPackage().getImplementationVersion() ´Â ºôµå ÈÄ »ý¼ºµÇ´Â MANIFEST.MF ·ÎºÎÅÍ Á¤º¸¸¦ ȹµæÇϹǷÎ,
IDE ´Ü¿¡¼ ´ÜÀ§Å×½ºÆ®¸¦ ¼öÇàÇϰųª ÇÒ ¶© ÇØ´ç °ªÀÌ null ·Î Ãâ·ÂµÉ °ÍÀÌ´Ù.
¡Ü maven-jar-plugin (or maven-war-plugin) Àû¿ë Àü, MANIFEST.MF
[zany@zany-mbp META-INF]$ cat MANIFEST.MF
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: zany
Start-Class: com.mysite.application.Application
Spring-Boot-Version: 1.2.0.RELEASE
Created-By: Apache Maven 3.2.3
Build-Jdk: 1.8.0_65
Main-Class: org.springframework.boot.loader.JarLauncher
¡Ü maven-jar-plugin (or maven-war-plugin) Àû¿ë ÈÄ, MANIFEST.MF
[zany@zany-mbp META-INF]$ cat MANIFEST.MF
Manifest-Version: 1.0
Implementation-Title: my-module ¢¸¢¸¢¸¢¸
Implementation-Version: 1.0.1-SNAPSHOT ¢¸¢¸¢¸¢¸
Archiver-Version: Plexus Archiver
Built-By: zany
Specification-Vendor: Pivotal Software, Inc. ¢¸¢¸¢¸¢¸
Specification-Title: my-module ¢¸¢¸¢¸¢¸
Implementation-Vendor-Id: com.mysite ¢¸¢¸¢¸¢¸
Spring-Boot-Version: 1.2.0.RELEASE
Implementation-Vendor: Pivotal Software, Inc. ¢¸¢¸¢¸¢¸
Main-Class: org.springframework.boot.loader.JarLauncher
Start-Class: com.mysite.application.Application
Created-By: Apache Maven 3.2.3
Build-Jdk: 1.8.0_65
Specification-Version: 1.0.1-SNAPSHOT ¢¸¢¸¢¸¢¸
¡Ü TROUBLE SHOOTING
¡Û getClass().getPackage().getImplementationVersion() ÀÇ °á°ú°¡ null ÀÎ °æ¿ì
- ¾Æ·¡¿Í °°Àº ÄÚµå·Î MANIFEST.MF ÆÄÀÏ¿¡¼ Á÷Á¢ Attribute ¸¦ ÀÐ¾î °¡Á®¿Ã ¼ö ÀÖ´Ù.
- getClass().getPackage().getImplementationVersion() ·Î ½ÃµµÇØ º» °á°ú°¡ null ÀÏ °æ¿ì
¾Æ·¡¿Í °°ÀÌ ½ÃµµÇÏ´Â °ÍÀ» ÇÔ¼ö ÇüÅ·Π¸¸µé¾î³õÀ¸¸é ½±°Ô »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¡Û µÎ°¡Áö ¹æ¹ý ¸ðµÎ ºôµå Àü ´ÜÀ§ Å×½ºÆ® Çϰųª, IDE ³»¿¡¼ WAS ¸¦ ±âµ¿ÇÏ¿© ½ÇÇàÇØ º¸´Â °æ¿ì¿¡´Â »ç¿ëÇÒ ¼ö ¾ø´Ù.
- maven-jar-plugin (or maven-war-plugin) À» ÅëÇØ ºôµå °á°úÀÇ META-INF/MANIFEST.MF ¾È¿¡ Á¤º¸¸¦ ³Ö±â ¶§¹®¿¡ null ÀÌ Ãâ·ÂµÇ°Å³ª,
ÀǵµÄ¡ ¾ÊÀº °ªÀÌ Ãâ·ÂµÉ ¼öµµ ÀÖ´Ù.
|