기본 콘텐츠로 건너뛰기

라벨이 maven인 게시물 표시

Git 복제 + IntelliJ 열기 + Maven 빌드 자동화

Git 복제 + IntelliJ 열기 + Maven 빌드 자동화 1. 자동화 목표 문제 보고 부터 시작해서 소프트웨어를 수정하고 JAR 파일을 테스트 위치로 보내기 까지의 과정을 아래의 여섯 단계로 나눌 수 있습니다. 문제 보고 Git 저장소 복제 cd WORKING_DIR \path\to\repo-scripts\clone-and-cd-PROJECT_NAME.bat IntelliJ에서 프로젝트 임포트하여 열기 .\scripts\launch-idea.bat 문제 해결을 위한 소스 수정 Maven으로 프로젝트 빌드 .\scripts\clean-and-build.bat JAR 파일을 테스트 위치로 보내기 .\scripts\upload-jar.bat 위의 1번, 4번 과정을 제외한 나머지 과정들에 대해서 자동화 스크립트를 작성하고자 합니다. 2. 개발 환경 이 문서를 작성하기 위하여 사용한 개발 환경은 아래와 같습니다. 시스템 정보 Windows 10 개발 도구 JDK 1.8 Maven 3.8.6 IntelliJ 2021.2.2 PuTTY 0.77 (원격 접속 및 파일 업로드 도구) 개발 도구의 실행 파일이 있는 경로들을 시스템 환경 변수 PATH 에 등록합니다. 3. 스크립트 작성 3.1. Git 저장소 복제 clone-and-cd-PROJECT_NAME.bat 파일의 내용을 아래와 같이 작성합니다. @echo off git clone https://YOUR_NAME@github.com/ACCOUNT_NAME/REPOSITORY_NAME.git cd REPOSITORY_NAME\PROJECT_NAME 3.2. IntelliJ에서 프로젝트 임포트하여 열기 launch-idea.bat 파일의 내용을 아래와 같이 작성합니다. @echo off idea64.exe pom.xml 3.3. Maven으로 프로젝트 빌드 ...

Eclipse Java 프로젝트를 Maven 프로젝트로 변환하기

Eclipse Java 프로젝트를 Maven 프로젝트로 변환하기 1. 들어가는 말 이 글에서는 Eclipse Java 프로젝트 를 Maven 프로젝트 로 변환했을 때의 이점과 변환 방법을 소개합니다. 구분 설명 소스 폴더 위치 Eclipse Java 프로젝트 Eclipse에서 File -> New -> Project -> Java -> Java Project 메뉴를 통해서 생성한 프로젝트 src Maven 프로젝트 Maven을 사용해서 빌드하는 프로젝트 (Eclipse의 File -> New -> Project -> Maven -> Maven Project 메뉴를 통해서 생성할 수도 있음) src/main/java src/test/java 개발하고 있는 Java 응용프로그램 프로젝트의 규모가 복잡하지 않더라도 그 수가 수십 개에 이르고 IDE와 빌드 도구마저 제각각이라면 이로부터 발생하는 어려움들을 과소평가해서는 안됩니다. 대표적인 어려움 몇 가지를 적어보면 아래와 같습니다. 이 프로젝트의 배포용 실행 파일을 어떻게 만들지? 타겟 클래스 버전은? 어떤 파일들이 실행 파일에 포함되어야 하지? 리소스 파일은 어디에 복사해야 하지? 외부 참조 파일은 어떤 방식으로 포함시키지? 새롭게 빌드한 결과 파일의 크기가 왜 기존의 결과 파일 크기와 다르지? IDE가 제공하는 자체 빌드 도구를 통해서 위의 어려움들을 어느 정도 완화시킬 수는 있지만 만족스러운 정도는 아니며 모든 개발자들이 동일한 IDE를 쓰도록 유도하는 것도 쉽지는 않습니다. 왜냐하면 각자 IDE를 선택하는 데에는 여러 가지 이유가 있을 것이기 때문입니다. 다행히도 위와 같은 문제를 해결하기 위해 탄생한 빌드 전문 도구인 Maven을 사용하면 프로젝트 정보를 pom.xml 파일에서 지정하고 mvn package 명령을 실행함으로써 배포용 실행 파일을 만들어 낼 ...

Maven 사용 기초

Maven 사용 기초 Maven을 자주 사용하지 않는 상황에서 필요할 때 참조하기 위하여 이 문서를 작성합니다. Maven 설치 다운로드 사이트: https://maven.apache.org/download.cgi 이 문서 작성에 사용한 Maven 버전: 3.8.2 프로젝트 생성 및 빌드 기본 과정 프로젝트 생성 > mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false 프로젝트 폴더로 이동 > cd my-app 프로젝트 빌드 > mvn package 테스트 과정을 빼고 빌드를 하고자 한다면 maven.test.skip=true 옵션을 추가합니다. > mvn -Dmaven.test.skip=true package 응용프로그램 실행 > mvn exec:java -Dexec.mainClass=com.mycompany.app.App 응용프로그램에 인자를 전달하고자 한다면 아래와 같이 실행하면 됩니다. > mvn exec:java -Dexec.mainClass=com.mycompany.app.App -Dexec.args="foo bar" 또는 > java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App 자주 사용하는 archetype들 maven-archetype-quickstart maven-archetype-simple maven-archetype-webapp 자주 사용하는 단계들 기본에 해당하는 단계들 compile - 소스 코드 컴파일 package - 컴파일 결과를 JAR 파일과 같은 형태로 묶기 i...

JDK 1.6 + Maven + IntelliJ 사용 기초

JDK 1.6 + Maven + IntelliJ 사용 기초 1. 개요 다음과 같은 환경에서 Hello World 프로그램을 작성하고 빌드하여 실행할 수 있도록 안내합니다. 도구 버전 설명 Windows 10 운영체제 JDK 1.6 Java 컴파일러 및 실행 환경 IntelliJ IDEA 2021.2.2 (Community Edition) 통합 개발 환경 Maven 3.2.5 (JDK 1.6에서 동작하는 마지막 버전) 빌드 도구 2. 사용 기초 2.1. IntelliJ IDEA에서 프로젝트 생성 Windows 시작 메뉴에서 JetBrains 아래의 IntelliJ IDEA Community Edition 2021.2.2 를 클릭합니다. Welcome to IntelliJ IDEA 대화상자에서 Projects 탭 화면의 New Project 버튼을 클릭합니다. New Project 대화상자에서 Maven 탭 화면의 Project SDK 를 1.6 으로 지정하고 Next 버튼을 클릭합니다. New Project 대화상자에서 다음과 같이 입력하고 Finish 버튼을 클릭합니다. Name : HelloWorld Location : C:\DevTest\220402_HelloWorld 생성된 pom.xml 파일의 내용은 아래와 같습니다. <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.ap...

Spring + MyBatis + Oracle 사용 기초

Spring + MyBatis + Oracle 사용 기초 사용 환경 Windows 10 Java 1.8 Maven 3.8.2 Spring Boot 2.5.4 Oracle DB 19 MyBatis 2.2.0 Hello 프로젝트 따라하기 프로젝트 생성 브라우져에서 spring initializr 를 방문하여 아래와 같이 입력하고 GENERATE 버튼을 클릭합니다. Project: Maven Project Language: Java Spring Boot: 2.5.4 Project Meta: Group: trvoid.mybatis Artifact: basic-mybatis-example Name: basic-mybatis-example Package name: trvoid.mybatis Packaging: Jar Java: 8 Dependencies: JDBC API MyBatis Framework Oracle Driver 생성된 프로젝트 파일을 다운로드하여 압축을 풉니다. 프로젝트 폴더 구조는 아래와 같습니다. hello |-src |-main |-java |-trvoid.mybatis |-BasicMybatisExampleApplication.java |-resources |-application.properties |-test |-java |-trvoid.mybatis |-BasicMybatisExampleApplicationTests.java |-pom.xml pom.xml 파일에서 의존성 항목과 빌드 플러그인을 확인할 수 있습니다. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> ...

Spring + JdbcTemplate + Oracle 사용 기초

Spring + JdbcTemplate + Oracle 사용 기초 사용 환경 Windows 10 Java 1.8 Maven 3.8.2 Spring Boot 2.5.4 Oracle DB 19 Hello 프로젝트 따라하기 프로젝트 생성 브라우져에서 spring initializr 를 방문하여 아래와 같이 입력하고 GENERATE 버튼을 클릭합니다. Project: Maven Project Language: Java Spring Boot: 2.5.4 Project Meta: Group: trvoid.jdbc Artifact: basic-jdbc-example Name: basic-jdbc-example Package name: trvoid.jdbc Packaging: Jar Java: 8 Dependencies: JDBC API, Oracle Driver 생성된 프로젝트 파일을 다운로드하여 압축을 풉니다. 프로젝트 폴더 구조는 아래와 같습니다. hello |-src |-main |-java |-trvoid.jdbc |-BasicJdbcExampleApplication.java |-resources |-application.properties |-test |-java |-trvoid.jdbc |-BasicJdcExampleApplicationTests.java |-pom.xml pom.xml 파일에서 의존성 항목과 빌드 플러그인을 확인할 수 있습니다. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</ar...

Maven + Spring 파일 업로드 기초

Maven + Spring 파일 업로드 기초 사용 환경 Windows 10 Java 1.8 Maven 3.8.2 Spring 5.0.6 Hello 프로젝트 따라하기 프로젝트 생성 브라우져에서 spring initializr 를 방문하여 아래와 같이 입력하고 GENERATE 버튼을 클릭합니다. Project: Maven Project Language: Java Spring Boot: 2.5.4 Project Meta: Group: trvoid Artifact: file-upload Name: File Upload Package name: trvoid.fileupload Packaging: Jar Java: 8 Dependencies: Spring Web 생성된 프로젝트 파일을 다운로드하여 압축을 풉니다. 프로젝트 폴더 구조는 아래와 같습니다. hello |-src |-main |-java |-trvoid.fileupload |-FileUploadApplication.java |-test |-java |-trvoid.fileupload |-FileUploadApplicationTests.java |-pom.xml pom.xml 파일에서 의존성 항목과 빌드 플러그인을 확인할 수 있습니다. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> ...

Maven + Spring @RestController 사용 기초

Maven + Spring @RestController 사용 기초 사용 환경 Windows 10 Java 1.8 Maven 3.8.2 Spring 5.0.6 Hello 프로젝트 따라하기 프로젝트 생성 브라우져에서 spring initializr 를 방문하여 아래와 같이 입력하고 GENERATE 버튼을 클릭합니다. Project: Maven Project Language: Java Spring Boot: 2.5.4 Project Meta: Group: trvoid Artifact: rest Name: rest Package name: trvoid Packaging: Jar Java: 8 Dependencies: Spring Web 생성된 프로젝트 파일을 다운로드하여 압축을 풉니다. 프로젝트 폴더 구조는 아래와 같습니다. hello |-src |-main |-java |-trvoid |-RestApplication.java |-test |-java |-trvoid |-RestApplicationTests.java |-pom.xml pom.xml 파일에서 의존성 항목과 빌드 플러그인을 확인할 수 있습니다. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.s...

Maven + Spring 사용 기초

Maven + Spring 사용 기초 사용 환경 Windows 10 Java 1.8 Maven 3.8.2 Spring 5.0.6 Hello 프로젝트 따라하기 프로젝트 생성 >mvn archetype:generate -DgroupId=trvoid -DartifactId=hello -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false 생성된 프로젝트 폴더 구조는 아래와 같습니다. hello |-src |-main |-java |-trvoid |-App.java |-test |-java |-trvoid |-AppTest.java |-pom.xml 의존성 추가 pom.xml <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.0.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.0.6.RELEASE</version> </dependency> 서비스 추가 src/main/java/trvoid/HelloManager.java package trvoid; public interface HelloManager { public String getService...