• SEARCH

    통합검색
  • GAMEZONE
    • 커뮤니티
      • 공지사항
      • 유저게시판
        • 등업게시판
        • 출석체크
        • 정회원 무료자료실
      • 스크린샷
      • 인증자료실
    • 리니지
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 메이플스토리
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 바람의나라
      • 자유게시판
      • 홍보게시판
      • 자료게시판
        • 유틸자료실
        • 소스자료실
        • 클라이언트
        • 팩 자료실
      • 연구게시판
        • 개발내역
        • 질문과답변
        • 기타
      • 강의게시판
        • DR
        • CR
        • 구버전
        • 클라이언트 개조
        • 노하우 게시판
        • 게임공략 & 팁
    • 다크에덴
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 믹스마스터
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 라그나로크
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 기타게임
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 게임강의
    • 비베&포토샵
      • 자유게시판
      • 자료실
        • 일반자료실
        • 포인트 자료실
      • 노하우게시판
      • 포토샵게시판
    • 모바일
      • 게임공략
      • 포인트 자료실
      • 유틸자료실
      • 자유게시판
  • 기타게임 소스자료실
    • 기타게임 소스자료실 기타 ()
    • Maven, m2eclipse설치 후 eclipse에서 WTP용 프로젝트 생성 삽질!

      • 애니콜런
      • 2020.09.20 - 22:41 276

    여기저기 메이븐이 많이 쓰이는 것 같아 이참에 삽질을 해봤습니다.
    Maven은 소프트웨어 프로젝트 관리툴인데, 의존적인 라이브러리를 서버와 연동해서 쉽게 업데이트를 해주며, 컴파일 및 배포 과정을 최소화하며 자동으로 테스트를 할 수 있게 도와주는 뭐 그런 툴인 듯 합니다.

    한마디로 나름 그냥 편하려고 만든거라는거-_-

    라이브러리를 수동으로 복사해서 lib폴더에 쳐넣는 행위를 막고 자동으로 라이브러리를 업데이트할 수 있게 해주는 것만해도 큰 장점인 것 같습니다.

    1. Maven 다운로드 및 설치
    http://maven.apache.org/download.html 여기서 최신버전인 3.0을 받아서 압축해제
    환경변수 Path에 maven디렉토리/bin폴더를 걸어두셔야 어디서든 mvn을 때릴 수 있기에 추가!
    환경변수 MAVEN_HOME을 maven디렉토리홈으로 해서 추가!

    2. m2eclipse설치
    이건 이클립스에서 maven템플릿파일을 쉽게 생성할 수 있는 플러그인입니다.
    eclipse에서 Help -> Install New Software -> Add해서 url을 http://m2eclipse.sonatype.org/sites/m2e/ 로 한다음에 Maven Integration for eclipse를 체크하고 설치하면 됩니다 ㄷㄷ

    3. Mavan프로젝트 생성
    이제 Maven프로젝트 생성을 합니다.
    New -> Project 하면 Maven Project가 새로 생겼음.
    선택하고, location에서 디폴트로하고 Next하고, 우린 webapp을 만들꺼니까 groupid가 org.apache.maven.archetypes이고, Artifact Id가 maven-archetype-webapp을 선택하고 Next!
    Group Id는 패키지명으로 대충 com.mudchobo.springtest라고 하고,
    Artifact Id는 프로젝트 이름이니까 대충 SpringTest로....-_-

    그리고 이제 cmd쳐서 콘솔로가서 SpringTest폴더로 이동. 아래 커맨드발동!
    [code]mvn -Dwtpversion=2.0 eclipse:eclipse[/code]
    그러면 wtp용 프로젝트로 변환이 되어있을겁니다.
    그리고 이상하게 Java Compiler가 1.4로 맞춰져있는데, 1.6으로 맞춥니다.
    프로젝트Properties에서 Java Compiler에서ㅓ 1.6으로 맞추고, 아래 Use default compliance setting체크해주시면 됨 ㅇㅇ
    그리고 Project Facets에서 Java를 6.0으로 바꿔주시면 됨 ㅇㅇ

    4. 의존성 라이브러리 추가
    pom.xml
    [code]<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.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.mudchobo.springtest</groupId>
      <artifactId>SpringTest</artifactId>
      <packaging>war</packaging>
      <version>0.0.1-SNAPSHOT</version>
      <name>SpringTest Maven Webapp</name>
      <properties>
          <spring.version>3.0.5.RELEASE</spring.version>
      </properties>
      <url>http://maven.apache.org</url>
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>
        <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-webmvc</artifactId>
              <version>${spring.version}</version>
        </dependency>
        <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-web</artifactId>
              <version>${spring.version}</version>
        </dependency>
      </dependencies>
      <build>
        <finalName>SpringTest</finalName>
      </build>
    </project>
    [/code]
    스프링 라이브러리 2개를 추가했습니다. 그러면 뭔가 웹에서 다운받으면서 라이브러리를 저장소에 저장해둡니다 ㄷㄷ 뭔가 알아서 처리하는 느낌!

    5. 이제 스프링라이브러리를 쓰도록 web.xml수정 및 spring-servlet.xml추가!
    web.xml
    [code]<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
            http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

        <display-name>Court Reservation System</display-name>

        <servlet>
            <servlet-name>spring</servlet-name>
            <servlet-class>
                org.springframework.web.servlet.DispatcherServlet
            </servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>

        <servlet-mapping>
            <servlet-name>spring</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    </web-app>
    [/code]
    spring-servlet.xml
    [code]<beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
    </beans>[/code]

    6. Maven Dependencies 라이브러리 추가.
    그냥 실행하게 되면 메이븐에서 읽어드린 라이브러리가 추가되지 않아 Eclipse에 있는 Server에 SpringTest프로젝트를 추가하면 ClassNotFoundException에러가 납니다.
    [code]심각: Error loading WebappClassLoader
      context: /SpringTest
      delegate: false
      repositories:
    ----------> Parent Classloader:
    org.apache.catalina.loader.StandardClassLoader@1172e08
     org.springframework.web.servlet.DispatcherServlet
    java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet[/code]
    그래서 저도 뭔가 라이브러리를 추가해야된다는 생각에 구글링을 해보니 방법이 있군요!

    해당 프로젝트폴더에 .setting폴더에 있는 org.eclipse.wst.common.component파일
    org.eclipse.wst.common.component
    [code]<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java" />
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/resources" />[/code]위에 두줄 지우고,
    [code]<dependent-module deploy-path="/WEB-INF/lib">
        <dependency-type>uses</dependency-type>
    </dependent-module>[/code]3줄추가하고~

    그리고 .classpath파일에 아래 클래스패스를 추가합니다.
    .classpath
    [code]<classpathentry exported="true" kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
        </attributes>
    </classpathentry>[/code]
    그러면 프로젝트properties에서 Java Build Path에서 Library를 보면 Maven Dependencies가 추가되어있을겁니다~ 여기에는 pom.xml에서 라이브러리 추가한 것이 들어있어요~

    이제 Server에 추가한다메 시작하면 톰캣 에러없이 동작할겁니다.

    7. war파일 만들기~
    프로젝트에 Export해도 되고, mvn으로 명령어를 때려도 됩니다.
    [code]mvn package[/code] 때리면 packaging이 war로 되어있어서 war파일이 생성되더군요.
    물론 이과정에서 ftp에 배포라던지 그런게 가능한 것 같습니다. 좀 더 연구해보고!

    PS. 갑자기 느끼는 생각인데, 이것보다 더 간편한 방법이 있지 않을까 싶기도하고....-_- 후.....

    참고자료
    http://blog.v-s-f.co.uk/2010/09/jsf-2-1-project-using-eclipse-and-maven-2/
    http://maven.apache.org/plugins/maven-eclipse-plugin/

    이 게시물을..
    N
    0
    0
    • [Go 공식문서 한국어 정리] ⓪23. go 명령어 이해하기오뉴노노
    • 4
      애니콜런

    애니콜런 님의 최근 글

    작성 글이 없습니다.

    애니콜런 님의 최근 댓글

    작성 댓글이 없습니다.
    글쓴이의 서명작성글 감추기 
    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • [Go 공식문서 한국어 정리] ⓪23. go 명령어 이해하기
    • 목록
      view_headline
    × CLOSE
    전체 던파 5 뮤 18 천상비 프로젝트신루 5 아이온 18 어둠의전설 28 리니지2 7 크로노스 5 칼온라인 3 기타 306
    기본 (398) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    • 포인트 획득 공지
      4
      2026.04.24 - 19:48 4645 4
    • 링크 업로드 관련 공지
      8
      2026.03.25 - 21:56 4496 8
    • 인증메일 공지
      2
      2026.03.15 - 16:42 4392 2
    • 파일링크 및 인증메일 발송 관련 문의 안내
      8
      2026.03.14 - 22:03 4984 8
    • 포인트 게시판 안내
      2026.02.28 - 19:14 5773
    • 게임존 사이트 변경 사항 안내
      9
      2026.02.26 - 01:07 7589 9
    • 소스자료는 직접 올려주세요
      2017.06.06 - 16:16 849
    398
    기타
    피파온라인 3 클라이언트
    lyw01234 2026.05.30 - 23:17 40
    397
    기타
    [Rust 공식문서 한국어 정리] ⑭. Rustlings
    오뉴노노 2026.05.30 - 08:38 11
    396
    기타
    [Rust 공식문서 한국어 정리] ⑬. The Unstable Book
    오뉴노노 2026.05.30 - 08:38 12
    395
    기타
    [Rust 공식문서 한국어 정리] ⑫. Rust Cookbook
    오뉴노노 2026.05.30 - 08:37 9
    394
    기타
    [Rust 공식문서 한국어 정리] ⑪. The Little Book of Rust Macros
    오뉴노노 2026.05.30 - 08:36 4
    393
    기타
    [Rust 공식문서 한국어 정리] ⑩. Rust Design Patterns
    오뉴노노 2026.05.30 - 08:36 12
    392
    기타
    [Rust 공식문서 한국어 정리] ⑨. Rust API Guidelines
    오뉴노노 2026.05.30 - 08:35 12
    391
    기타
    [Rust 공식문서 한국어 정리] ⑧. The Rust Performance Book
    오뉴노노 2026.05.30 - 08:34 7
    390
    기타
    [Rust 공식문서 한국어 정리] ⑦. Asynchronous Programming in Rust
    오뉴노노 2026.05.30 - 08:34 6
    389
    기타
    [Rust 공식문서 한국어 정리] ⑥. The Rust Edition Guide
    오뉴노노 2026.05.30 - 08:33 9
    388
    기타
    [Rust 공식문서 한국어 정리] ⑤. The Cargo Book
    오뉴노노 2026.05.30 - 08:32 1
    387
    기타
    [Rust 공식문서 한국어 정리] ④. The Rustonomicon
    오뉴노노 2026.05.30 - 08:32
    386
    기타
    [Rust 공식문서 한국어 정리] ③. The Rust Reference
    오뉴노노 2026.05.30 - 08:31
    385
    기타
    [Rust 공식문서 한국어 정리] ②. Rust By Example
    오뉴노노 2026.05.30 - 08:31
    384
    기타
    [Rust 공식문서 한국어 정리] ①. The Rust Programming Language (The Book)
    오뉴노노 2026.05.30 - 08:30 2
    383
    기타
    [Go 공식문서 한국어 정리] ⑤7. Codewalk: Share Memory By Communicating
    오뉴노노 2026.05.30 - 03:29 7
    382
    기타
    [Go 공식문서 한국어 정리] ⑤6. Codewalk: 마르코프 체인 텍스트 생성
    오뉴노노 2026.05.30 - 03:26 2
    381
    기타
    [Go 공식문서 한국어 정리] ⑤5. Codewalk: Go의 일급 함수
    오뉴노노 2026.05.30 - 03:25 1
    380
    기타
    [Go 공식문서 한국어 정리] ⑤4. Go 명령어 도구
    오뉴노노 2026.05.30 - 03:24 2
    379
    기타
    [Go 공식문서 한국어 정리] ⑤3. 통합 테스트 커버리지 프로파일링
    오뉴노노 2026.05.30 - 03:23 1
    378
    기타
    [Go 공식문서 한국어 정리] ⑤2. Go 레이스 디텍터 소개
    오뉴노노 2026.05.30 - 03:22 5
    377
    기타
    [Go 공식문서 한국어 정리] ⑤1. Go 모듈 게시하기
    오뉴노노 2026.05.30 - 03:21 8
    376
    기타
    [Go 공식문서 한국어 정리] ①50. Go 프로그램 프로파일링
    오뉴노노 2026.05.30 - 03:20 1
    375
    기타
    [Go 공식문서 한국어 정리] ①4⑨. 모듈 호환성 유지하기
    오뉴노노 2026.05.30 - 03:19 1
    374
    기타
    [Go 공식문서 한국어 정리] ①4⑧. Go Modules로 마이그레이션
    오뉴노노 2026.05.30 - 03:18 1
    373
    기타
    [Go 공식문서 한국어 정리] ①4⑦. 리플렉션의 법칙
    오뉴노노 2026.05.30 - 03:18
    372
    기타
    [Go 공식문서 한국어 정리] ①4⑥. JSON-RPC: 인터페이스 이야기
    오뉴노노 2026.05.30 - 02:46
    371
    기타
    [Go 공식문서 한국어 정리] ①4⑤. JSON과 Go
    오뉴노노 2026.05.30 - 02:45 1
    370
    기타
    [Go 공식문서 한국어 정리] ①4④. Go 선언 구문
    오뉴노노 2026.05.30 - 02:44
    369
    기타
    [Go 공식문서 한국어 정리] ①4③. Gob 데이터 인코딩
    오뉴노노 2026.05.30 - 02:43 2
    368
    기타
    [Go 공식문서 한국어 정리] ①4②. Go 슬라이스: 사용법과 낮부 구조
    오뉴노노 2026.05.30 - 02:42 1
    367
    기타
    [Go 공식문서 한국어 정리] ①4①. Go image/draw 패키지
    오뉴노노 2026.05.30 - 02:40
    366
    기타
    [Go 공식문서 한국어 정리] ③3⑩. Go 모뒬 참조
    오뉴노노 2026.05.30 - 02:35
    365
    기타
    [Go 공식문서 한국어 정리] ②38. Go 프로그래밍 언어 사양
    오뉴노노 2026.05.30 - 02:33
    364
    기타
    [Go 공식문서 한국어 정리] ⓮37. Go 동시성 패턴: Context
    오뉴노노 2026.05.30 - 02:29 1
    363
    기타
    [Go 공식문서 한국어 정리] ⑯36. Go의 오류 처리
    오뉴노노 2026.05.30 - 02:24
    362
    기타
    [Go 공식문서 한국어 정리] ⑯35. Go 모듈 사용하기
    오뉴노노 2026.05.30 - 02:21
    361
    기타
    [Go 공식문서 한국어 정리] ⑯34. Go 퍼집(Fuzzing)
    오뉴노노 2026.05.30 - 02:17
    360
    기타
    [Go 공식문서 한국어 정리] ⑯33. Go 제네릭스 시작하기
    오뉴노노 2026.05.30 - 02:14
    359
    기타
    [Go 공식문서 한국어 정리] ⑯32. Go 프로젝트에 기여하기
    오뉴노노 2026.05.30 - 02:12 1
    358
    기타
    [Go 공식문서 한국어 정리] ⑯31. Go 메모리 모델
    오뉴노노 2026.05.30 - 02:09
    357
    기타
    [Go 공식문서 한국어 정리] ⑯30. Go 코드 작성법
    오뉴노노 2026.05.30 - 02:06
    356
    기타
    [Go 공식문서 한국어 정리] ⑯29. Go 다운로드 및 설치
    오뉴노노 2026.05.30 - 02:03 1
    355
    기타
    [Go 공식문서 한국어 정리] ⑯28. Go 자주 물어보는 질문(FAQ)
    오뉴노노 2026.05.30 - 02:01 2
    354
    기타
    [Go 공식문서 한국어 정리] ⑯27. 효율적인 Go 프로그래밍
    오뉴노노 2026.05.30 - 01:58 2
    353
    기타
    [Go 공식문서 한국어 정리] ⑯26. Go 어셍리이터 빠른 가이드
    오뉴노노 2026.05.30 - 01:52 2
    352
    기타
    [Go 공식문서 한국어 정리] ⓪25. Go로 웹 애플리케이션 작성하기
    오뉴노노 2026.05.30 - 01:45
    351
    기타
    [Go 공식문서 한국어 정리] ⓪24. 데이터 레이스 디텍터 상세 가이드
    오뉴노노 2026.05.30 - 01:42 2
    350
    기타
    [Go 공식문서 한국어 정리] ⓪23. go 명령어 이해하기
    오뉴노노 2026.05.30 - 01:40 1
    349
    기타
    [Go 공식문서 한국어 정리] ⓪22. Go 공식 문서 가이드
    오뉴노노 2026.05.30 - 01:38 1
    • 1 2 3 4 5 6 7 .. 8
    • / 8 GO
  • GAMEZONE
 GAMEZONE all rights reserved.
by OrangeDay