728x90
300x250

[Sun Sys - Java] 태스트도구 JUnit 5 - Eclipse(STS 4.4)에서 사용하는 방법


프로그래밍을 하면서 태스트 작업을 하기 마련인데 자바에서 태스트 환경도구를 사용하는 방법에 대해서 소개하려고 한다.

수업 등에서는 다뤄볼 일이 적은 부분일 수도 있다. 쉬우면서 어려운 부분이 태스트 도구라고 본다.


IDE: Spring-tool-suite-4-4.7.2.RELEASE (2020-09-08 기준 - 최신)

JAR: 

1. org.junit.jupiter.api_5.6.0.v20200203-2009.jar

2. org.junit.jupiter.engine_5.6.0.v20200203-2009.jar

3. org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar

4. org.junit.jupiter.params_5.6.0.v20200203-2009.jar

5. org.junit.platform.commons_1.6.0.v20200203-2009.jar

6. org.junit.platform.engine_1.6.0.v20200203-2009.jar

7. org.junit.platform.lanucher_1.6.0.v20200203-2009.jar

8. org.junit.platform.runner_1.6.0.v20200203-2009.jar

9. org.junit.platform.suite.api_1.6.0.v20200203-2009.jar

10. org.junit.vintage.engine_5.6.0.v20200203-2009.jar

11. org.opentest4j_1.2.0.v20190826-0900.jar

12. org.apiguardian_1.1.0.v20190826-0900.jar

13. org.junit_4.13.0.v20200204-1500.jar

14. org.hamcrest_1.2.0.v20180420-1519.jar


(EPL 라이선스 적용: 오픈소스)


* 공식 사용 메뉴얼: 사이트
https://junit.org/junit5/docs/current/user-guide/

* Assert 관련 API
http://junit.sourceforge.net/javadoc/org/junit/Assert.html




1. 사용 방법 - 영상


아주 간결하게 필요한 부분 위주로 소개하였으니 부담없이 시청해도 된다.



영상 1. Eclipse에서 프로젝트 생성하기 및 JUnit 셋팅하기



영상 2. JUnit 5 - 태스트 케이스 작성 및 동작 시키기




2. 사용 방법(2) - 프로젝트 생성하기


프로젝트를 생성하는 방법을 시작으로 소개하겠다.



그림 1. 프로젝트 생성하기


프로젝트 익스플로러(Project)에서 마우스 오른쪽 버튼을 클릭한다.

New-> Project를 클릭한다.



그림 2. 프로젝트 생성하기


Java Project를 클릭한다.

Next를 클릭한다.



그림 3. 프로젝트 생성하기


Project-name을 입력한 후 Finish를 누른다.



3. Properties - Junit 5 Class Path 등록하기 (Build Path 설정)


제일 중요한 작업이 아닐까 싶다.

이 셋팅을 안 해버리면, 사용할 수 없다. 물론 수동으로 등록하는 방법도 있겠으나 비효율적이다.



그림 4. 프로젝트 클릭 후 마우스 오른쪽 버튼 메뉴 모습


프로젝트를 클릭한다.

마우스 오른쪽 버튼을 클릭한 후, "Properties"를 클릭한다.



그림 5. 프로젝트 속성 - Java Build Path -> ClassPath 클릭 후 과정


Java Build Path를 클릭한다.

Libraries를 클릭한다.

ClassPath를 클릭한다.

Add Library를 클릭한다.



그림 6. Junit5 - 추가하기(1)


JUnit을 선택한다.

Next를 클릭한다.




그림 7. Junit5 - 추가하기(2)


Junit5를 선택한다.

Finish를 누른다.



그림 8. Junit5 - 추가 완료한 모습


다음처럼 등록되면 성공적으로 작업을 완료한 것이다.



4. Class 만들기


실제 태스트를 진행할 예를 하나 만들겠다.



그림 9. Class 만들기(1)


src 폴더를 클릭한 후 마우스 오른쪽 버튼으로 클릭한다.

New->Class를 클릭한다.



그림 10. Class 만들기(2)


Package는 적당히 입력해준다. (예: com.example)

Name을 Calculate라고 입력한다.

Finish를 누른다.



그림 11. Class 만들기(2)


코드를 작성해준다.


public int plus(int a, int b){

     return a + b;

}



5. Junit Test Case - 작성하기 


작성한 클래스를 태스트 케이스를 작성하여 태스트하도록 하겠다.


그림 12. Test Case 생성하기(1)


com.example 패키지를 마우스 오른쪽으로 클릭한다.

New->Other를 클릭한다.




그림 13. Test Case 생성하기(2)


Junit Test Case를 클릭한다.

Next를 누른다.



그림 14. Test Case 생성하기(3)


Class under test의 Browse를 클릭한다.



그림 15. Test Case 생성하기(2)


앞서 만든 "Calculate"를 검색한다.

Calculate를 선택한다.

OK를 누른다.



그림 16. Test Case 생성하기(3)


Package명을 입력한다.

Name을 입력한다.

Next를 누른다.



그림 17. Test Case 생성하기(4)


plus 함수를 선택한다.

Finish를 누른다.



6. Junit Test Case - 태스트 작업 실행하기 


태스트 명세를 완료하였다면, 태스트를 수행하도록 하겠다.



그림 18. Test Case 실행하기(1)


하나 예로 코드를 입력해준다.


@Test

void testPlus(){

      assertEquals(3, new Caculate().plus(2, 3));

}


이 코드는 직감적으로 plus 함수의 결과가 3이 되어야 참인데, 5라는 것을 코드만 보고도 알 수 있다.

외형 코드 말고 세부적인 코드에서 사람이 생각하는 결과를 원하는 게 아니라, 컴퓨터가 3으로 출력하는지 확인하는 것이다.



그림 19. Test Case 실행하기(2)


CalculateTest.java를 마우스 오른쪽 버튼으로 클릭한다.

Run As->JUnit Test를 클릭한다.



그림 20. Test Case 결과 (3)


결과값이 실패했다고 빨강색 진행바와 함수가 올라오는 것을 확인할 수 있다.

코드를 변경해서 시도해보자.


@Test

void testPlus(){

      assertEquals(5, new Caculate().plus(2, 3));

}


직감적으로 5가 되면 맞는 것이다.

진짜 5가 맞는지 확인해보자.


CalculateTest.java를 마우스 오른쪽 버튼으로 클릭한다.

Run as-> JUnit Test를 클릭한다.



그림 21. Test Case 결과 (4)


녹색 불이 들어오면서 이상이 없는 것을 살펴볼 수 있었다.



* JUnit Assert 주요 메서드와 사용 예시


 assert 메서드

설명 

 assertArrayEquals(a, b);

배열 a, b의 일치 여부

assertEquals(a, b);

객체 A와 B가 일치함을 확인.

assertSame(a, b);

 객체 A와 B가 같은 객체임을 확인한다.
assertEquals 메서드는 두 객체의 값이 같은지 검사를 한다.

assertSame메서드는 두 객체가 동일한가

즉, 하나의 객체여부를 확인한다. (== 연산자 역할)

assertTrue(a);

 조건 A가 참인가를 확인한다.

 assertNotNull(a);

객체 A가 null이 아님을 확인한다.

assertFalse(a);

조건 A가 거짓인지를 확인한다.



String empname[] = {"hwani","kimchi"};

String studentname[] = {"hama","sumi"};

assertArrayEquals(empname, studentname);


List someList = someClass.getSomeList();

assertNotNull("조회결과 null", someList);


assertTrue(someList.size() > 0);


int score = 5;

assertFalse( score < 0 ) ;


assertEquals(3, someList.size()); 



반응형
728x90
300x250

[컴퓨터 - PC활용] Eclipse - UML, ERD 설계 도구 - Amateras Modeler


소프트웨어 공학 문서 등으로 알기 쉽게 만드는 방법 중 하나가 UML 작업이 아닐까 싶다.

UML 작성을 도와주는 프로그램을 소개하려고 한다.


시중에 있는 좋은 UML도구를 사용하려고 하면, 유료가 굉장히 많다.


UML 프로그램은 크게 "Class Diagram(클래스 다이어그램)", "Sequence Diagram(순서작성 다이어그램)", "ERD(Entity-Relationship Diagram)" 등의
소프트웨어공학 문서를 작성하는데 사용함.



1. Amateras Modeler 소개 및 설치 방법


http://amateras.osdn.jp/cgi-bin/fswiki_en/wiki.cgi


사이트에 접속한다.



그림 1. Project Amateras - 2020-09-20


사이트에 접속해보면, 다양한 제품들이 있다는 것을 확인할 수 있다.

조금 업데이트가 안 되서 오래된 기분이 든다.



그림 2. Help -> Install New Software에서 설치하기


Add Repository 창에서
Name : Amateras Modeler,
Location : https://takezoe.github.io/amateras-update-site 를 입력합니다.

OK 버튼을 누릅니다.


크게 어렵지 않은 과정으로 설치할 수 있다.

(License: Eclipse Public Licenses v2 - 오픈소스)



그림 3. Class Diagram(클래스 다이어그램 생성 기능) - Amateras UML



그림 4. Seq Diagram(시컨스 다이어그램 생성 기능) - Amateras UML




2. UML to Java Generator 3.0


UML to Java Generator라는 도구를 소개하겠다.



그림 5. Help -> Eclipse Marketplace



그림 6. Help -> Eclipse Marketplace(1)


관련된 프로젝트에 대해서 궁금하면, 아래의 사이트에 접속해서 확인할 수 있다.


https://marketplace.eclipse.org/content/uml-java-generator#group-details


읽어봐야 할 부분이 조금 있는 것으로 보인다.



그림 7. UML-Java Generator - Eclipse


Acceleo 개발 팀에 의해서 Eclipse UML Generators Project 파트가 생성되었다고 되어 있다.

Marketplace에서 추가로 "Acceleo 3.7"을 설치해보도록 하겠다.




그림 8. Help -> Eclipse Marketplace(2)


사용 난이도: 다소 어려움. 동작이 안 될 수도 있음. (삽질 시간이 길다)


* License: EPL v2


Acceleo 프로젝트가 어렵다면, UML Designer도 있으니 참고하면 도움이 될 거 같다.


http://www.umldesigner.org/



그림 9. UMLDesigner 사이트에서 배포하고 있는 UML 도구


압축을 해제하면 된다.

프로젝트가 업데이트되지 않은 듯하다.



그림 10. UMLDesigner 사이트에서 배포하고 있는 UML 도구


UMLDesigner를 실행하면 된다.



그림 11. UMLDesigner 9.0 - Eclipse


잠시 기다린다.

사용 원리는 Eclipse와 동일하다.



그림 12. UMLDesigner 9.0 - Eclipse


처음 실행하면 이러한 창이 뜬다.

File->New->Example을 클릭한다.



그림 13. UMLDesigner 9.0 - Eclipse


Travel Agency UML을 선택한 후 Next를 누른다.



그림 14. UMLDesigner 9.0 - Eclipse


Finish를 누른다.



그림 15. UMLDesigner 9.0 - Eclipse


representation.aird의 세부 항목 중 하나를 열어본 것이다.

UML 설계를 할 수 있는 도구라는 것을 살펴볼 수 있다.



그림 16. UMLDesigner 9.0 - Eclipse


프로젝트를 선택한 후 "프로젝트 추가 버튼"에서 UML Model을 클릭한다.



그림 17. UMLDesigner 9.0 - Eclipse


myUMLProject.uml으로 입력 후 Finish를 누른다.



그림 18. UMLDesigner 9.0 - Eclipse


myumlproject.uml에서 Model을 선택한 후 오른쪽 버튼을 누른다.

New Representation을 클릭한 후 NewModel Class Diagram을 클릭한다.




그림 19. UMLDesigner 9.0 - Eclipse


모의로 하나 그려보았다.

설명서를 보면, UML to Java 변환이 가능하다고 되어있으나 현재는 동작되지 않고 있다.



3. Modelio (Open source Modeling Project)


초기 용량은 300Mb 내외로 다소 크지만, 관심을 가져봐도 되는 프로젝트인듯하다.


주소: https://www.modelio.org/



그림 20. Modelio Project - 2020-09-20


Download를 클릭해본다.



그림 21. Modelio Project - 2020-09-20


다양한 운영체제를 지원하는 것을 확인할 수 있다.



그림 22. Modelio Project - 2020-09-20


설치는 크게 어렵지 않으며 Next를 누른다.



그림 23. Modelio Project - 2020-09-20


GNU v3 Licenses를 적용받는다.

I Agree를 누른다.



그림 24. Modelio Project - 2020-09-20


Next를 누른다.



그림 25. Modelio Project - 2020-09-20


Install을 누른다.



그림 26. Modelio Project - 2020-09-20


기다린다.



그림 27. Modelio Project - 2020-09-20


설치가 완료된 모습이다. Finish를 누른다.




3-1. Modelio 초기 실행 및 환경설정


Modelio 프로그램은 크게 기본에 충실하게 생겼다.



그림 28. Modelio 4 실행


File->Create a project를 클릭한다.



그림 29. Modelio 4 - 프로젝트 생성


project name을 입력한다.

Java project에 체크한 후 create the project를 누른다.



그림 30. Modelio 4 - 프로젝트 생성 


잠시 기다린다.



그림 31. Modelio 4 - 프로젝트 환경설정


Configuration -> Modules를 클릭한다.



그림 32. Modelio 4 - 프로젝트 환경설정(Module)


Modules 탭을 클릭한다.

Add를 누른다.

JavaDesigner를 선택한 후 Deploy in the project를 누른다.




그림 33. Modelio 4 - 프로젝트 환경설정(Library)


Libraries 탭을 클릭한다.

Add from update site를 클릭한다.




그림 34. Modelio 4 - 프로젝트 환경설정(Library)


JDK를 체크한 후 Add to project를 누른다.



그림 35. Modelio 4 - 프로젝트 환경설정(Library)


잠시 기다린다.



그림 36. Modelio 4 - 프로젝트 환경설정(Library)


JDK가 등록되었으면, Close를 클릭한다.



3-2. Modelio - 다이어그램 생성하기


Modelio를 이용하여 다이어그램을 생성하는 방법에 대해서 소개하겠다.



그림 37. Modelio 4 - Create Diagram 생성하기


Modelio의 하위 프로젝트 폴더에서 오른쪽 버튼을 클릭한다.

Create diagram을 누른다.



그림 38. Modelio 4 - Create Diagram 생성하기


Class Diagram을 선택한 후 OK를 누른다.



그림 39. Modelio 4 - Create Diagram 생성하기


클래스 다이어그램을 작성하면 된다.





3-3. Modelio - UML to Java generator


패키지, 클래스 항목에 "Java element" Value를 체크한다.



그림 40. Modelio 4 - UML to Java Generator


그리고 UML 아이콘을 눌러준다.


참고사항: Attribute의 value type에서 "HttpServlet" 등으로 변경하거나 null값으로 두면 자동생성이 되지 않는다.




그림 41. Modelio 4 - UML to Java Generator


소스코드가 생성된 것을 확인할 수 있다.


경로를 모르겠다면, configuration 메뉴에서 Modules을 클릭한다.

Informations 탭을 클릭하면, workspaces 경로를 확인할 수 있다.



그림 42. Modelio 4 - UML to Java Generator


생성된 소스코드의 모습이다.




4. 맺음글(Conclusion)


이외에도 StarUML 프로젝트(과거에는 무료였으나 현재는 유료)를 대체할 수 있는 강력한 UML 프로그램이 있는지 정리해보았다.

그나마 기대가 되는 프로젝트는 Modelio 프로그램이라고 본다.

아무쪼록 글을 줄여본다.


참고로 UML툴로 설계한 후에 프로그램 코드로도 일괄 변환작업을 할 수 있다.





* 참고 자료(Reference)


1. FrontPage - Project Amateras, http://amateras.osdn.jp/cgi-bin/fswiki_en/wiki.cgi, Accessed by 2020-09-20, Last Modified 2006

2. Uml to Java Generator | Eclipse Plugins, Bundles and Products - Eclipse Marketplace, https://marketplace.eclipse.org/content/uml-java-generator#group-details, Accessed by 2020-09-20, Last Modified 2020-09-18

3. Acceleo | Home, https://www.eclipse.org/acceleo/, Accessed by 2020-09-20, Last Modified 2020-09-20

4. Download, http://www.umldesigner.org/download/, Accessed by 2020-09-20, Last Modified 

5. 무료 StarUML 대체 프로그램 13개, https://littlecarbb.tistory.com/entry/%EB%AC%B4%EB%A3%8C-StarUML-%EB%8C%80%EC%B2%B4-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-13%EA%B0%9C, Accessed by 2020-09-20, Last Modified 2019-06-26 15:44

-> 비고: UML 관련 프로그램에 대해서 정리가 잘 되어 있음.

반응형
728x90
300x250

[Spring-Framework] 4. Eclipse와 Maven MVC 웹 프로젝트 - 생성하기


이번에 소개할 글은 Apache Maven 프로젝트(이하 "메이븐" 또는 "Maven")을 활용하여 Maven 기반의 MVC 프로젝트를 생성하도록 하겠다.

Spring-Framework를 이해하기 전에 경험해보면 도움이 될 것이라고 생각한다.


적용 대상: Eclipse 최신 버전(또는 Spring Tool Suite-4 이상)




1. 프로젝트 생성하기


프로젝트 생성부터 간단하면서도 알기 쉽게 작성하였다.



그림 1. Project 생성하기


File에서 New->Project...을 클릭한다.




그림 2. Project 생성하기


Use Default Workspace location을 체크한 후 Next를 누른다.



그림 3. Project 생성하기


org.apache.maven.archietypes    |   maven-archietype-webapp   |   1.4


해당 카탈로그를 선택한 후 Next를 누른다.



그림 4. Project 생성하기


아래 그림 3처럼 여러가지 값을 적는 창이 나타난다.

Group Id는 프로젝트를 진행하는 회사나 팀의 도메인 이름을 거꾸로 적는다.

Artifact Id는 해당 프로젝트의 이름을 적는다.

package는 위 두가지가 조합된 이름으로 나온다.


작성을 완료하였으면, Finish를 누른다.



그림 5. Project 생성하기


프로젝트 생성이 된 것을 확인할 수 있다.

Problems 창에 보면, Servlet 오류가 있는 것을 확인할 수 있다.

정상적으로 프로젝트가 생성된 것이다.



2. Maven 프로젝트에서의 Servlet-api.jar 파일에 대한 것(pom.xml 이해)


maven을 사용하면, 귀찮게 servlet-api.jar 파일을 따로 복사, 붙여넣기를 할 필요가 없다.



그림 6. 이전 스타일 - Maven 프로젝트를 사용하지 않은 경우


Apache Maven 프로젝트는 POM.xml 기반으로 동작한다.

따로 servlet-api.jar를 이전의 "WebContents\Web-inf\lib에 복사, 붙여넣기"를 안 해도 된다.




3. Maven 프로젝트에서의 Servlet-api.jar 파일에 대한 것(pom.xml 구현)


pom.xml 파일을 편집하여 servlet-api.jar를 자동으로 생성하는 방법에 대해서 소개하겠다.



그림 7. pom.xml - eclipse


pom.xml을 더블클릭한다.


<dependencies>~</dependencies> 내에는 <dependency>가 정의되어 있는 것을 살펴볼 수 있다.
(글로만 보면, 조금 어려우니 그림을 가지고 소개함.)


    <dependency>

<groupId>javax.servlet</groupId>

<artifactId>javax.servlet-api</artifactId>

<version>3.1.0</version>

<scope>provided</scope>

</dependency>


</dependency> 뒤에 위의 내용을 입력해준다.



그림 8. pom.xml - eclipse


pom.xml에 명령어를 입력함으로서 잠시 기다리면, javax-servlet-api-3.1.0.jar 파일이 자동으로 생성되는 것을 확인할 수 있다.

그리고 Problems 내에 발생했던 javax.servlet Error도 함께 사라지는 것을 확인할 수 있다.


참고: SSD 이상의 빠른 저장매체로 작업한다면, 빠르게 변화하는 모습을 확인할 수 있음.





4. Maven 프로젝트 - Hello World 실행하기


Maven 프로젝트를 Apache Tomcat 9으로 실행하도록 하겠다.



그림 9. Apache Tomcat 9으로 개발환경에서 모의 태스트 하기


"Run As..."를 누른다.




그림 10. Apache Tomcat 9으로 개발환경에서 모의 태스트 하기


Run on Server를 선택한 후 OK를 누른다.



그림 11. Apache Tomcat 9으로 개발환경에서 모의 태스트 하기


Tomcat 서버 셋팅을 한 후 Finish를 누른다.


비고: 이미 환경 셋팅이 된 모습이다. Tomcat v9.0 Server at localhost가 안 보인다면 환경설정을 따로 해야 한다.




그림 12. Apache Tomcat 9으로 개발환경에서 모의 태스트 하기


Finish를 누른다.



그림 13. Apache Tomcat 9으로 개발환경에서 모의 태스트 하기


Maven 기반으로 완성된 홈페이지를 살펴볼 수 있다.




5. Maven Project의 pom.xml 설정이 만능인가?


앞서 servlet-api.jar에 대해서 간단한 설정으로 자동생성이 된다고 소개하였다.

pom.xml 설정으로 모든 것을 다 처리할 수 있을 정도인지 언급해보려고 한다.


결론은 아니다.



그림 14. pom.xml 설정에서의 오류


pom.xml 설정을 하였는데, 운이 안 좋으면 jar파일을 못 찾을 수도 있다.

물론 36줄~40줄의 내용이 완벽한 것은 절대 아니다.


이 부분에 대해서는 추가적으로 소개하겠다.




6. Maven Project의 pom.xml 설정에 대한 정보찾기 


그림 14에서의 잘못된 pom.xml 설정의 문제에 대해서 잠깐 소개하였다.

구체적으로 Maven Project에서 지원하는 Repository가 무엇인지, 버전은 어떻게 되는지 각종 정보에 대해서 알 수 있는 사이트를 소개하겠다.


https://mvnrepository.com/


이 사이트를 모르면, 초기에 환경설정 작업을 하는 데 많이 힘들 것으로 보인다.



그림 15. mvnpepository.com (2020-09-19)


그림 15 사이트에 접속해서 검색해서 사용하고자 하는 버전, pom에서 지원하는지 등을 쉽게 살펴볼 수 있다.



그림 16. mvnrepository.com의 mysql 검색 결과 (2020-09-19)


MySQL Connector/J를 클릭한다.



그림 17. mvnrepository.com의 mysql 세부 결과 (2020-09-19)


세부적으로 지원하는 버전에 대해서 소개하고 있다.



그림 18. 버전을 클릭하여 pom에서 사용하는 코드 생성


Maven에 적용할 수 있는 코드가 출력되는 것을 확인할 수 있다.

그림 14의 오류 문제가 해결되는지 한번 적용해보겠다.



그림 19. 이상없이 적용된 mysql-connecotr-java-8.xx버전 - Maven MVC


<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->

<dependency>

    <groupId>mysql</groupId>

    <artifactId>mysql-connector-java</artifactId>

    <version>8.0.21</version>

</dependency>


정상적으로 동작하는 모습을 살펴볼 수 있다.



비고: MyBatis부터 다양한 Library를 예를 들면, 간단한 명령어로 연결시킬 수가 있음.




7. 결론(Conclusion)


pom.xml을 제대로 적용해주면, 많은 문제를 쉽고 간단하게 해결할 수 있다고 본다.

Maven MVC 웹 프로젝트 입문에 대해서 소개하였다.


JSP/Servlet을 경험한 사용자들을 위한 글을 한번 추가로 연재해보겠다.



* 참고 자료(References)


1. Maven Repository: mysql » mysql-connector-java » 8.0.21, https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.21, Accessed by 2020-09-20, Last Modified 2020-07-12.

2. Spring MVC Example for User Registration and Login - DZone Web Dev, https://dzone.com/articles/spring-mvc-example-for-user-registration-and-login-1, Accessed by 2020-09-20, Last Modified 2017-03-05.

3. Maven Repository: Search/Browse/Explore, https://mvnrepository.com/ , Accessed by 2020-09-20, Last Modified 2020-09-20.

반응형
728x90
300x250

[Spring-Framework] 3. Eclipse와 Apache Maven 프로젝트 - 구축하기(1)


Spring-Framework의 배경이 되는 Maven(이하 "Apache Maven") 프로젝트에 대해서 소개하려고 한다.


비고: 최신 Eclipse 개발도구에는 Maven Project가 내장되어 있음.


수동으로 콘솔 환경 등의 명령어로 Maven 개발환경을 구축하는 방법부터 시작해서 Eclipse 내장기능으로 사용하는 방법에 대해서 소개하겠다.



[Maven 개발방법]

1. 콘솔 등으로 수작업 개발 및 코딩
   (1, 2항목을 잘 읽어보면 도움이 될 것으로 보인다.)

2. Eclipse IDE 등을 활용한 Maven 개발환경 구축





1. Apache Maven Project


Apache Maven Project 사이트에 들어가면, Maven 프로젝트에 대해서 소개 및 자세한 내용을 살펴볼 수가 있다.


아파치 메이븐?

Apache Maven은 소프트웨어 프로젝트 관리 및 이해 도구이다.
프로젝트 개체 모델 (POM)의 개념을 기반으로 Maven은 중앙 정보에서 프로젝트의 빌드,보고 및 문서를 관리 할 수 있다.


URL: https://maven.apache.org/



그림 1. Apache Maven Project



그림 2. Apache Maven - Download


그림 2의 사이트에서 apache-maven-3.6.3.bin.zip을 내려받아서 수동으로 설치할 수 있다.





2. Maven 개발환경 - 설치하기


내려받은 apache-maven-3.6.3-bin을 압축푼다.



그림 3. apache-maven-3.6.3-bin 압축 풀기


apache-maven-3.6.3-bin.zip을 압축 푼다.

그러면, 폴더 하나가 생성되는 것을 확인할 수 있다.



그림 4. apache-maven-3.6.3


경로를 메모해둔다.

-> D:\apache-maven-3.6.3-bin\apache-maven-3.6.3





3. Maven 개발환경 - 시스템 환경설정


방금 전에 압축 푼 폴더를 바탕으로 Maven 개발환경을 셋팅할 것이다.



그림 5. apache-maven-3.6.3 - 시스템 환경 변수(N)


"시스템 -> 오른쪽 버튼 -> 속성"을 누른다.

"고급 시스템 설정 -> 고급 탭 -> 환경 변수(N)"을 클릭한다.



그림 6. apache-maven-3.6.3 - 시스템 환경 변수(N)


시스템 변수(S)에서 "Path" 변수를 찾아서 클릭한다.

"편집(I)"을 누른다.




그림 7. apache-maven-3.6.3 - 시스템 환경 변수(N)


맨 아래 항목에 아까 메모해둔 경로를 입력해준다. ("복사", "붙여넣기"를 권장함.)



4. Maven 개발환경 - 명령 프롬프트로 구축환경 확인하기


앞에 단계를 잘 했다면, 확인해야 할 것이다.

아래의 과정을 잘 따라하도록 하자.



그림 8. 명령 프롬프트 - 관리자 권한으로 실행하기


시작 메뉴에 cmd라고 입력 후 "관리자 권한으로 실행"을 클릭한다.



그림 9. 명령 프롬프트 - 관리자 권한으로 실행하기


mvn -version


이라고 명령어를 입력하면, 그림 9의 출력화면을 볼 수 있다.



5. Maven - Repository 경로 변경


기본 Maven Repository는 ${user.home}/.m2/repository 라는 폴더에서 관리한다.
dev 폴더에서 관리하도록 저장소를 로컬로 바꿀것이다.
dev 폴더에서 관리하길 원하지 않는다면, 이 단계는 넘어가도 된다.


[경로 변경 방법]

1. D:\.........중략......\apache-maven-3.6.2 에서 repository 폴더를 생성한다.

2. D:\.........중략......\apache-maven-3.6.2\conf 에서 settings.xml 파일을 연다. 

3. setting.xml 파일에서 <localRepository> 주석 처리된 부분을 찾은 뒤, 그 위에다 로컬 저장소를 등록한다.



그림 10. 폴더 만들기


임의의 폴더명 "repository"라는 폴더를 만들어본다.



그림 11. 환경설정 변경하기(1) - 변경 전


약 53줄에 있는 <localRepository>~</localRepository>를 복사해서 (빈 줄) 55줄 정도에 붙여넣는다.

[주석이 없는 빈줄에 넣어주기]



그림 12. 환경설정 변경하기(1) - 변경 후


입력을 완료하였다면, 저장을 누른다.





6. 응용 - Eclipse 프로젝트에 수동 설치한 Apache Maven 적용하기


최근 eclipse는 기본적으로 Apache Maven을 내장하고 있다.

하지만, 굳이 수동으로 설치한 Maven을 사용하고 싶다면, 다음처럼 사용할 수도 있다.



그림 13. Preferences 설정하기


"Window->Preferences"를 클릭한다.



그림 14. Preferences 셋팅하기


Maven 탭에서 Installations을 클릭한다.

그리고 "Add..." 버튼을 클릭한다.




그림 15. Preferences 셋팅하기


Directory 버튼을 누른다.



그림 16. Preferences 셋팅하기


apache-maven-3.6.3의 설치 경로를 선택한 후 "폴더 선택"을 누른다.




그림 17. Preferences 셋팅하기


설정을 확인한 후 "Finish"를 누른다.



그림 18. Preferences 셋팅하기


"apache-maven-3.6.3"을 체크한다.

그리고 "Apply"를 누르면 적용이 완료된다.



그림 19. Preferences 셋팅하기


사용자 환경설정에 관한 것이다.

Maven 탭에서 User Settings를 클릭한다.


[기본값]

User Settings: C:\Users\사용자계정명\.m2\settings.xml

Local Repository: C:\Users\사용자계정명\.m2\repository




그림 20. Preferences 셋팅하기


앞서 환경설정을 변경한 경로를 찾아서 선택한 후 "settings"를 열기한다.

(비고: Apache-maven-3.6.3\conf폴더 내에 settings.xml 파일이 존재함)



그림 21. Preferences 셋팅하기


그림 21처럼 변경한 후 "Apply"를 누르면 적용이 완료된다.



7. 맺음글(Conclusion)


Apache Maven 프로젝트를 설치하는 방법과 개발 환경 구축이라는 주제를 소개하였다.



* 참고 자료(Reference)


1. Maven - Welcome to Apache Maven, https://maven.apache.org/, Accessed by 2020-09-19, Last Modified 2020-09-10

반응형
728x90
300x250

[컴퓨터 - PC활용] 형상관리 - Eclipse SVN과 연동[클라이언트 사용](2)


형상관리 서버 구축이 되었다면, 클라이언트에서 사용하면 된다.

2번의 형상관리 SVN Server에 관한 글과 Eclipse 글을 반드시 따라한 후에 사용하는 것을 추천한다.


이 글을 읽기 전에 참고하면, 도움이 되는 글은 다음과 같다.


1. [컴퓨터 - PC활용] Eclipse에서 git 설치 및 push하기, https://yyman.tistory.com/1392, Accessed by 2020-09-19, Last Modified 2020-09-19 03:28

-> 비고: Eclipse에서 git 설치하기 (Help -> Install New Software 관련 부분 참고할 것)


2. [컴퓨터 - PC활용] 형상관리 - Visual SVN Server 서버 설치(1), https://yyman.tistory.com/1396, Accessed by 2020-09-19, Last Modified 2020-09-19 19:37

-> 서버 구축하기



*작업 프로그램:

[클라이언트]

* Eclipse IDE 통합 개발환경 프로그램(Spring tool-suite 4-4.7.2 포함)
* Subclipse 4.3 (Eclipse Marketplace)  -> 직접 영향

* git -> Install New Software에서 제공하는 것(다수)   -> 간접 참고(github 프로젝트에서 주로 사용함)
 
[서버]

* Apache Subversion 프로젝트

* Apahce Http Server 2.4


해당 글을 읽고 따라 하면 습득할 수 있는 것들 
1. svn에 프로젝트를 업로드 준비를 할 수 있다.

2. commit을 통해 svn 서버에 작업한 프로젝트를 업로드할 수 있다.

3. 협업 프로젝트 감각을 얻을 수 있다.
4. 소프트웨어공학론의 형상관리에 대해서 감각을 터득할 수 있을 거라고 주장한다.




1. Eclipse Subversion(Subclipse 4.3) 설치하기


이클립스에서 사용한 Subclipse를 설치하는 방법에 대해서 소개하겠다.



그림 1. Eclipse Marketplace - SVN


Help -> Eclipse Marketplace...을 클릭한다.



그림 2. Eclipse Marketplace - SVN


SVN을 검색한 후, Subclipse 4.3.0을 찾는다.

Install을 누른다.



그림 3. Eclipse Marketplace - SVN


잠시 기다린다.


그림 4. Eclipse Marketplace - SVN


Confirm을 누른다.



그림 5. Eclipse Marketplace - SVN


잠시 기다린다.



그림 6. Eclipse Marketplace - SVN


"I aceept the terms of the license agreement"를 체크한 후 Finish를 누른다.



그림 7. Eclipse Marketplace - SVN


기다린다.



그림 8. Eclipse Marketplace - SVN


인증받지 않은 소프트웨어에 대한 내용이다. 

Install anyway를 누른다.



그림 9. Eclipse Marketplace - SVN


재시작(Restart Now)을 누른다.



2. SVN-Server와 이클립스 연결하기


다음 소개할 내용은 이클립스에서 SVN-Server를 연결하는 방법에 대해 소개하겠다.




그림 10. SVN-연결하기


Window의 Perspective -> Open Perspective -> Other를 클릭한다.



그림 11. SVN-연결하기


SVN Repository Exploring를 클릭한다.



그림 12. SVN-연결하기


SVN이라는 아이콘을 클릭한다. (Add repositories라고 글자가 보임)



그림 13. SVN-연결하기


URI를 입력하라고 창이 뜬다.



그림 14. Copy URL to Clipboard - VisualSVN Server


VisualSVN Server에서 Repositories의 사용할 폴더를 선택한 후, 오른쪽 버튼을 누른다.

Copy URL to Clipboard를 클릭한다.



그림 15. Add SVN Repository


Url 주소를 입력 후 Finish를 누른다.



그림 16. Add SVN Repository


계정을 만들었을 때, 대문자, 소문자 조합으로 만들었으면 글자 그대로 입력해주어야 한다.

참고로 로그인 계정에서의 아이디의 대소문자를 구별한다.


OK를 누른다.



그림 17. SVN Repositories에 등록된 모습


https주소 생략/svn/Study의 폴더를 오른쪽 버튼 후 "새로고침(Refresh)"을 하게 되면, 계정을 입력해주라고 창이 뜬다.




그림 18. 계정 입력 모습


계정을 입력하면 SVN이 정상적으로 연결된 모습을 확인할 수 있다.

비어있으면 정상이다. 


이 부분은 trunked, branch 폴더가 있는 경우에는 VisualSVN Server Repository 폴더를 만들 당시에 "Single-project repository"로
선택한 경우에 보일 수도 있다.



그림 19. Create New Repository - Visual SVN Server






3. 이클립스에서 Team -> Share Project로 프로젝트 올리기(준비)


프로젝트 올리기에 관한 방법이다.



그림 20. Java 화면으로 전환


J 아이콘을 클릭하면, 프로젝트가 있는 "Java 화면"으로 전환할 수 있다.



그림 21. Team->Share Project


프로젝트에서 오른쪽 버튼을 클릭한다.

Team -> Share Project를 누른다.



그림 22. Share Project - Eclipse


Git과 SVN 두 가지 타입이 있다.

SVN을 클릭 후 Next를 누른다.



그림 23. Share Project


크게 변동할 것이 없다면, Next를 누른다.



그림 24. Share Project


현재 프로젝트명을 크대로 생성할 것이라고 가정하고 그대로 둔다. 

물론 "Use specified folder name" 항목에 입력해서 폴더명을 지정해줄 수도 있다.


그대로 두고 Finish를 누른다.



그림 25. Share Project


화면 전환에 관한 내용이다. Yes를 누른다. (Yes를 누르면 Synchronize 화면으로 전환됨)



그림 26. Share Project


전환된 화면을 확인할 수 있다.


참고로 "commit"을 하지 않았으니 업로드 된 것은 아니다. (준비 단계라고 보면 되겠다.)


그림 27. VisualSVN에서 확인하기




4. 이클립스에서 Team -> Share Project로 프로젝트 올리기(Commit - 업로드)


commit을 통해서 작업한 내용을 업로드하는 방법에 대해서 소개하겠다.



그림 28. commit하기 - Eclipse


프로젝트를 오른쪽 클릭한 후 Commit을 클릭한다.



그림 29. commit하기 - Eclipse


주석을 입력한 후 OK를 누르면 전송이 된다.



그림 30. commit하기 - Eclipse


전송이 완료되면, Synchronize 화면으로 자동전환되면서 History에는 초기 프로젝트가 생성되었다고 뜨는 것을 확인할 수 있다.



그림 31. commit하기 - Eclipse


SVN Repositories Explore아이콘을 클릭한다.

프로젝트를 오른쪽 버튼으로 클릭한 후 refresh를 클릭한다.

History 탭을 클릭하면, 개정에 대한 내용을 확인할 수 있다.


다른 개발자와 협업할 경우에는 프로젝트를 Check Out하여 내려받아서 사용하면 된다.




5. VisualSVN Server에서 Commit후 프로젝트 모습


프로젝트를 Commit하여 업로드하게 되면, VisualSVN Server에서도 확인할 수 있다.



그림 32. VisualSVN Server의 프로젝트 내용 확인하기




반응형
728x90
300x250

[컴퓨터 - PC활용] Eclipse에서 git 프로젝트 import하기(가져오기)


Eclipse에서 git 프로젝트를 가져오는 방법에 대해서 소개하려고 한다.

git 프로젝트 등에서 좋은 아이디어 등을 얻을 수도 있고, 개선 작업을 할 수도 있다.

또는 오픈소스를 활용하는 프로젝트를 진행할 수도 있다.

이럴 때 유용하게 프로젝트를 가져오는 방법에 대해서 논하고자 한다.


적용대상: Eclipse 기반의 IDE(STS 4 포함) 





1. 프로젝트 가져오기


File에서 Import를 누른다.



그림 1. 프로젝트 가져오기(1)


Git의 Projects from git을 선택하고 "Next(다음)"을 누른다.



그림 2. 프로젝트 가져오기(2)


Clone URI를 선택하고 "Next"를 누른다.




그림 3. 프로젝트 가져오기(3)


가져오고 싶은 프로젝트의 git 사이트 URL을 찾아야 한다.

프로젝트에서 Code를 클릭한 후 URL 주소를 복사한다.




그림 4. 프로젝트 가져오기(4)


이클립스 화면으로 가서 "Import Projects from Git" 창을 활성화 한다.

그리고 URI에 복사했던 URL주소를 붙여넣는다.

그리고 "Next"를 누른다.





그림 5. 프로젝트 가져오기(5)


특별한 사항이 없다면, "Next"를 누른다.



그림 6. 프로젝트 가져오기(6)


로컬 저장소 경로에 관한 것이다.

원하는 경로가 있다면, Browse를 클릭하여 지정해도 좋다.


설정을 완료하였다면, Next를 누른다.




그림 7. 프로젝트 가져오기(7)


아래의 모습은 프로젝트가 원격 저장소에서 로컬 저장소로 전송되고 있는 모습이다.



그림 8. 프로젝트 가져오기(8)


Import existing Eclipse projects를 클릭하고 Next를 누른다. 



그림 9. 프로젝트 가져오기(9)


프로젝트에 대한 사항을 확인하고, "Finish"를 누른다.




그림 10. 프로젝트 가져오기(10)


아래의 그림 11처럼 프로젝트를 가져온 모습을 확인할 수 있다.




그림 11. 프로젝트 가져오기(11)



반응형
728x90
300x250

[컴퓨터 - PC활용] Eclipse에서 git 설치 및 push하기


Eclipse(Spring Tool Suite 포함)에서 git 기능을 사용하는 방법에 대해서 소개하겠다.

협업 프로젝트, 형상관리 등에 있어서 중요한 역할을 하는 프로그램 중 하나가 git이 아닐까 싶다.


Svn(Sub-Version / 서브버전) 기반의 형상관리는 프로젝트를 지속가능하도록 만들어준다.


적용 대상: Eclipse 기반의 IDE(통합개발환경도구)





1. Install New Software로 git 설치하기


help 메뉴에서 Install New Software를 클릭한다.



그림 1. Eclipse에서 가능한 환경 만들기



그림 2. Latest Eclipse Release 선택 후 git 검색하기(1)


Latest Eclipse Release를 선택하고 git을 검색한다.

git에 관련된 항목을 체크한다.




그림 3. Latest Eclipse Release 선택 후 git 검색하기(2)


선택을 완료했으면, 다음(Next)을 클릭한다.



그림 4. 선택한 항목에 대해서 확인하기


선택 사항을 확인한 후에, 다음(Next)을 클릭한다.




그림 5. 오픈소스 라이선스에 관한 것(Eclipse License)


읽어보고 동의한 후 "Finish"를 누른다.



2. git 작업환경으로 만들기


Window-> Perspective -> Open Perspective -> Other...를 클릭한다.



그림 6. 작업환경 전환



그림 7. Open Perspective


git을 클릭 후 Open을 누르면, Git 작업에 최적화된 화면이 나타나는 것을 확인할 수 있다.




3. github - ssh 생성하기


github 옵션에 보면, ssh 인증키를 입력하는 항목이 있다.


계정(Account)에서 Settings을 클릭하여, "SSH and GPG keys"를 클릭하면 아래 그림을 볼 수 있다.

이걸 등록하지 않고 Push 작업을 수행하면, 허가되지 않아서 작업할 수 없게 된다.



그림 8. SSH-key 등록하기



그림 9. Window->Preference 메뉴


Eclipse의 Egit의 ssh 기능을 활용하여 그림 8의 작업을 진행하도록 하겠다.

Window->Preference를 클릭하여 ssh 생성 기능을 사용할 수도 있다.



그림 10. SSH 기능의 모습


General의 Network Connection의 SSH2를 클릭하면 그림 10의 화면을 볼 수 있다.



그림 11. Key management의 Generate RSA Key 활용하기


Key management를 클릭한 후 Generate RSA Key를 누르면 RSA 암호키가 생성되는 것을 확인할 수 있다.

이 키를 활용하여 github SSH-GPA 인증을 받을 수 있다.



3. Remote 등록하기


github repositories 원격지에 접속할 것이다. 

Remote에서 Create Remote를 클릭한다.



그림 12. Create Remote 클릭하기



그림 13. New Remote


Remote name(리모트 명칭)을 임의로 입력해도 무방하다.

그리고 Create(생성)를 누른다.



그림 14. Configure Push


초기 공급자 셋팅값이 없다면, Change 버튼을 누른다.




그림 15. Select a URI


github에서 Repository URL을 복사 붙여넣기하고 URI 칸에 붙여넣기를 한다.

Authentication 항목에 "이메일주소", "비밀번호"를 입력한다.



그림 16. Configure Push(2)


Save and Push를 누른다.



4. Push 하기


Window -> Show View -> Git Staging을 클릭한다.



그림 17. Window의 Show View 




그림 18. Git Staging 작업창


Unstaged Changes에 올라와 있는 내용을 Staged Changes로 드래그 한다.

그리고 메시지 등 작성을 완료한 후 "Commit and Push..."를 누르면 Push 작업을 수행할 수 있다.




그림 19. Push Branch Master(1)


Preview 버튼을 누른다.



그림 20. Push Branch Master(2)


작성한 내용을 확인한 후 Push를 누른다.




그림 21. 업로드 진행 모습




그림 22. 작업 완료 결과


그림 22와 같은 메시지가 뜨면 정상적으로 작업이 완료된 것이다.

반응형
728x90
300x250

[Spring-Framework] 2. Eclipse의 UTF-8 프로젝트로 환경설정하기


Eclipse의 UTF-8 프로젝트로 환경설정하는 방법에 대해 소개하겠다.


적용 대상: Eclipse IDE 기반의 프로그램 (사용가능) // 웹 프로젝트의 예



- 문자 집합(Character Set): 사람이 사용하는 문자를 컴퓨터가 이해하는 기호로 표현하기 위해 문자를 각 코드(숫자)에 매칭 시킨 것


  컴퓨터에서 문자를 처리하려면 인코딩, 디코딩 과정이 필요하다.
  (예: 컴퓨터라는 게 아날로그, 디지털 이런 형태가 있다고 하면 흔히 1,0로 구성되어 있기 때문이다. - 쉽게 이해를 돕기 위해서 작성함.)

- 인코딩(Encoding)/부호화: 각 문자를 특정 기호로 변환.

  ex) 유니코드를 UTF-8로 인코딩


- 디코딩(Decoding)/복호화: 변환된 기호를 다시 문자로 변환


웹에서는 문자열 처리가 무척 중요하다고 할 수 있다.

Euc-kr로 했다가 UTF-8로 변경하면 문자가 깨져버리는 현상이 발생할 수 있다. (이유: 문자 집합이 다르기 때문)


1. Window의 Preferences 변경 


Window의 Preferences를 클릭한다.



그림 1. Preferences 클릭하기




그림 2. Encoding 검색하기 - Eclipse Preference


General -> Workspace -> Text file encoding -> Other: UTF-8


Web -> CSS Files -> UTF-8로 변경

Web -> HTML Files -> UTF-8로 변경

Web -> Jsp Files -> UTF-8로 변경



그림 3. Css Files -> 인코딩 Unicode(UTF-8)로 변경하기



그림 4. HTML Files 인코딩 형식 바꾸기



그림 5. JSP Files 인코딩 형식 바꾸기

반응형

+ Recent posts