========node와 연계해서 빌드도 가능===========REF
spring과 npm을 연계해서 빌드시에,
$npm run build:js 등으로 package.json을 이용해 직접 build명령을 내릴 수도 있다.
npm REF
- npm은 필요모듈 설치시, 글로벌설치/로컬설치 가능. 일반적으로는 로컬설치가 좋지만 선택이 어려울경우가 있다.
npm 환경설정 npm
각종 npm 패키지 명령: REF
- npm list browserify
- npm view browerify version ( 최신버전확인)
- npm remove browserify
- npm install (-g) browserify (-g: global)
<빌드 LifeCycle>: REF
default 빌드 LifeCycle은 다음과 같다.
- validate - validate the project is correct and all necessary information is available
- compile - compile the source code of the project
- test - test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed
- package - take the compiled code and package it in its distributable format, such as a JAR.
- verify - run any checks on results of integration tests to ensure quality criteria are met
- install - install the package into the local repository, for use as a dependency in other projects locally
- deploy - done in the build environment, copies the final package to the remote repository for sharing with other developers and projects.
아래와 같이 springBoot 실행도 가능.
$mvn springboot run REF
------------------------------------------------------------------------------------------------------------
=====maven 확인======== REF
$mvn -version
없으면 mac의 경우에는 brew install maven
=======BUILD+package=============== REF
$mvn package
빌드 에러메시지를 상세히 보고 싶다면
$mvn -e -X package
===기본설명===
spring 에서 pom.xmL을 이용해 maven 의존성 관리를 한다.
maven을 직접사용하는 방법도 있는데
maven 설치 후
$ mvn archetype:generate 해서 각종 값을 넣고 나면 (주로 package 명으로 넣으면된다)
pom.xml까지 자동 생성이 되며,
$ mvn compile exec:java -Dexec.mainClass=com.ky.App
으로 바로 커맨드 상에서 실행한다.
매우 유용하다.
=== MOJO ============
MOJO : Maven plain Old Java Object 이다. REF
- maven의 java-plugin을 만드는데 사용된다.
만들때는 @Mojo를 써서 간단히 만들 수 있다는데, 만들일 은 잘 없고.. 쓸 일은 많으니.. .. 쓸 때 위주로 보면.
groupId | This is the group ID for the plugin, and should match the common prefix to the packages used by the mojos |
artifactId | This is the name of the plugin |
version | This is the version of the plugin |
packaging | This should be set to "maven-plugin" |
dependencies | A dependency must be declared to the Maven Plugin Tools API to resolve "AbstractMojo" and related classes |
plugin내의 mojo를 실행시키려면
- "$mvn sample.plugin:hello-maven-plugin:1.0-SNAPSHOT:sayhi" 로도 가능하다.
($mvn groupId:artifactId:version:goal )