0. 메이븐의 빌드는 라이프사이클을 구성하는 phase와 phase와 바인딩되는 plugin의 goal로 처리된다. 0-1 라이프사이클의 phase는 plugin의 goal과 바인딩 된 경우는 실행되고 안된 경우는 넘어간다. 0-2 메이븐의 plugin이 아닌 다른 3rd party plugin으로 바인딩 되지 않은 라이프사이클 phase를 처리할 수도 있다. 1. 메이븐은 기본적으로 3개의 라이프 사이클을 가지고 있다. clean, default, site 이다. 1-1 Clean - working directory(즉 src 아래의 파일들)로 부터 파생된 모든 부산물을 정리한다. 1-1-1 기본적으로 plugin 바인딩이 되므로 그냥 실행하면 된다. 1-2 Default - 프로젝트를 빌드하고 dep..
1. 자바 개발의 표준이라고 생각하면 된다. Maven – Introduction to the Standard Directory Layout Introduction to the Standard Directory Layout Having a common directory layout would allow for users familiar with one Maven project to immediately feel at home in another Maven project. The advantages are analogous to adopting a site-wide look-and-feel. T maven.apache.org
1. 메이븐은 dependency를 중심으로 구조를 이루고 있다. 2. Dependency라고 하면 Maven프로젝트가 의존하는 artifact를 말한다. 3. Transitive Dependency는 프로젝트에서 의존하는 artifiact의 의존성을 말하는 것으로 3-1 이것 때문에 수많은 층의 구조가 형성된다. 3-2 cyclic dependency는 허용하지 않는데, 즉 A가 B를 의존하고 B가 C를 의존하는데 C가 A를 의존하는 경우이다. 4. Dependency Management는 사용하고 있는 artifact의 버전을 명시하여 그 버전을 사용하도록 하는 기능이다. 4-1 의존하고 있는 artifact가 의존하는 artifact도 지정할 수 있다. 5. Dependency Mediation은 ..
1. xml언어로 작성된 프로젝트 빌드에 사용되는 문서이다. Project Object Model의 약자이다. 1-1 maven-4.0.0.xsd 스키마를 만족하는 문서이다. 2. POM은 parent POM으로 부터 속성을 상속받을 수 있다. 3. 최종적으로 사용되는 상속을 모두 반영한 POM을 effective POM이라고 하고 아래처럼 생성할 수 있다. 4. 위의 기능으로 생성한 effective POM파일이다. 기본적인 설정값들이 다 들어와있음을 알 수 있다. 4-1 아래의 설정들은 메이븐 architype이 나온지가 너무 오래되어 실사용시 적절한 수정이 필요하다. 4.0.0 pe.pilseong hello-maven 1.0-SNAPSHOT hello-maven 11 11 11 UTF-8 UTF-..
1. 메이븐의 Coordinates는 artifact라고 부르는 단위의 라이브러리 혹은 컴포넌트를 구별하기 위한 정책이다. 2. groupId, artifactId, version으로 구분된다. 2-1 groupId는 일반적으로 조직의 domain을 반대로 쓰는 경우가 많지만 그냥 junit처럼 쓰는 경우도 있다. 2-2 artifactId는 프로젝트 이름이라고 생각하면 된다. 2-3 version은 artifact 라이브러리나 컴포넌트의 버전이다. 2-4 groupId와 version은 parent POM에서 상속받아서 사용가능하므로 항상 지정할 필요는 없다. 3. 메이븐 버전 3-1 Major, Minor, Incremental, Build Number, Qualifier로 나누어 진다. 3-2 Qu..
0. 요즘에는 거의 spring initializer을 많이 사용하므로 아래처럼 스프링 개발하는 경우는 거의 없다. 0-1 다만 간단한 console프로그램이나 webapp을 개발할 경우와 spring boot 없이 spring을 사용하는 경우는 편리하게 프로젝트를 생성할 수 있다. 1. Maven Archetype은 프로젝트 template이다. 1-1 아파치 메이븐은 표준 형태의 틀을 제공하고 있다. 1-2 아파치 이외에도 archetype을 제공한다. 1-3 보통은 너무 오래되어 별로 유용하지는 않다. 1-4 공식 홈페이지에서 안내하는 archetype은 다 없어지고 아래의 몇개 만 남아 있다. 1-5 mvn archetype:generate 모듈이름 으로 생성할 수도 있다. 2. 자바와 관련된 플..
1. maven을 사용하려면 pom.xml이 필요하다. 아래처럼 간단히 만들었다. 1-1 의존성이 없는 버전과 프로젝트 이름과 버전만 담겨져 있다. 4.0.0 pe.pilseong hello-maven 0.0.1-SNAPSHOT UTF-8 UTF-8 11 ${java.version} ${java.version} 1-2 폴더에 파일을 복사하고 mvn package를 실행하면 기본적인 메이븐과 관련된 파일이 자동으로 다운로드 된다. 1-3 그 후 컴파일을 하게 되는데 소스코드가 없어도 pom.xml에서 설정한 프로젝트 이름과 버전대로 jar을 생성한다. 1-3-1 생성되는 확장자는 기본이 jar이고 target폴더가 생성되어 그 안에 위치하게 된다. 1-4 생성된 jar파일을 압축해제 해보면 역시 META-..
1. Maven은 기본적으로 java, kt, scala, 같은 java vm기반의 코드를 컴파일한다. 2. 컴파일한 코드와 관련된 파일을 하나의 박스에 담는 package를 만든다. 2-1 다양한 패키지 형식을 지원하는데 2-1-1 jar (Java Archive) - 하나 이상의 class를 포함하는 zip압축 패키지 2-1-1-2 스프링이나 hibernate 라이브러리 같은 것) 2-1-2 war (Web Application aRchive) - 하나의 완전한 웹프로그램을 담은 zip압축 패키지이다. 2-1-2-1 여러 개의 jar파일과 클래스파일, 웹리소스를 가질 수 있다. 2-1-2-2 톰캣, 웹스피어 같은 웹컨테이너에서 실행된다. 2-1-3 ear (Enterprise ARchive)- 하나 ..
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib