Eclipse 4.2 + plugins

05.IDE 2012.08.30 19:47

3.x 와 4.x가 공존하던 중 4.2 Juno가 Main Version이 된 것 같다

새롭게 설치하면서 간만에 plugins update site를 정리해봤다.

물론 내가 쓰는 것만 -_-;


-m2eclipse

http://download.eclipse.org/technology/m2e/releases


-zookeeper

http://www.massedynamic.org/eclipse/updates/


-pmd

http://pmd.sourceforge.net/eclipse


-properties editor

http://propedit.sourceforge.jp/eclipse/updates/


-subversive

http://download.eclipse.org/technology/subversive/1.0/update-site/


-emma

http://update.eclemma.org/

+ jad, jadclipse

신고

'05.IDE' 카테고리의 다른 글

Eclipse 4.2 + plugins  (0) 2012.08.30
Runtime ClassNotFoundExceptions may result 문제 해결  (0) 2011.05.16
CVS fileattr.xml 에러 발생 해결  (0) 2009.10.20
Subversion을 이용한 형상관리  (0) 2009.10.08
TOW All-in-One 설치하기  (0) 2009.09.29
Posted by Stewie
일반적인 Dynamic Web Project 를 생성후 원하는 library를 추가했지만 class를 못찾는 경우가 있다.

이럴 경우 Package Explorer 에서 해당 project의 Resouce를 연후

Deployment Assembly 항목에 해당 library를 추가해주면 된다.

뻘짓했다 -_-
 
신고

'05.IDE' 카테고리의 다른 글

Eclipse 4.2 + plugins  (0) 2012.08.30
Runtime ClassNotFoundExceptions may result 문제 해결  (0) 2011.05.16
CVS fileattr.xml 에러 발생 해결  (0) 2009.10.20
Subversion을 이용한 형상관리  (0) 2009.10.08
TOW All-in-One 설치하기  (0) 2009.09.29
Posted by Stewie

1. 에러 유형  - commit 시 문제

    cvs commit: Up-to date check failed for xxx.java

 

    1) 원인

 

    밑에 퍼온 글의 내용이 주된 이유 이지만 CVS 를 정상적(?)으로 사용하지 않으면 저런 메세지가 나올수 있다.

    CVS 정보가 포함된 폴더를 다른 컴퓨터에 복사를 한후에 그곳에 작업하는 동안,

    원래 폴더의 CVS 버젼을 올린 다음, 다시 다른 컴퓨터에 복사한 폴더를 아무생각 없이 원래 폴더에 엎어버린다.

    (CVS client 가 불행히도 network folder 를 인식하지 못해서 이런 일이 발생했다.)

 

    이 경우 CVS 서버 쪽 버젼은 증가된 사항이나, CVS 클라이언트 버젼 쪽은 증가이전 상태이어서 Commit 이

    정상 동작할 수 없다.

 

    2) 해결 방법

 

    Commit 이 안되는 파일들의 버젼 정보를 담고 있는 클라이언트 쪽 CVS 폴더(Hidden 폴더) 에 있는 Entries 파일 내용을

    수정한다.

 

    Entries 파일에 오류나는 파일들이 버젼 정보를 수정한다. 버젼 정보를 정확히 모른다면 CVS 서버에 저장된 오류 파일의

    버젼 파일을 열어 보면 알 수 있다.

 

    Entries 파일 수정 파일 버젼 정보만 수정하여 Commit 을 하면 해당 파일의 수정한 날짜가 Commit 싯점의 날짜및 시간으로

    바뀐다. 내용이 바뀌는 건 아니니 고민하지 말 것

 

 

2. 에러 유형 - 한글 파일 문제 (CVSNT 2.5.04 이상 사용시 나오는 문제로 파악됨)

 

    RCS file: /Work/CVS ROOT/AckCenter_Server/FileUploadServer/사본 - FileUploadServerDlg.h,v
    done
    XML error at line 0: xmlEncodeEntitiesReentrant : input not UTF-8
    Checking in 사본 - FileUploadServerDlg.h;
    /Work/CVS ROOT/AckCenter_Server/FileUploadServer/사본 - FileUploadServerDlg.h,v  <--  사본 - FileUploadServerDlg.h
    initial revision: 1.1
    done
    XML error at line 0: output conversion failed due to conv error, bytes 0xBB 0xE7 0xBA 0xBB

    XML error at line 0: encoder error
    Unable to create C:/Work/CVS ROOT/AckCenter_Server/FileUploadServer/CVS/fileattr.xml
    cvs server: cannot write /Work/CVS ROOT/AckCenter_Server/FileUploadServer/CVS/fileattr.xml: No such file or directory

    Success, CVS operation completed

 

 

    1) 원인

 

    이 오류 때문에 돌아 버릴 뻔 했다. 위의 오류 부분 중 빨간색으로 칠한 부분을 잘 보아야 한다.

    이 오류는 CVS 서버에 저장될 파일들의 리스트를 관리하는 fileattr.xml 에 파일 정보를 Update 하면서 오류가 난 것이다.

    왜냐? 버젼관리 대상 파일명칭이 한글이다. -_-;;;;;

 

    잘 알다시피 XML 은 encoding 을 따로이 지정하지 않으면 기본 encoding 이  UTF-8 이기 때문이다.

    

    아놔.. 

 

     2) 해결 방법

 

     이 오류가 나면 오류 원인이 된 파일과 동일한 directory의 파일에 대한 정보가 CVS 서버에 제대로 존재하지 않는다고

     판단해야 한다.

     

     복구방법은 오류가 난 directory 의 CVS 폴더 (hidden)에 fileattr.xml 를 만들어야 한다. 

     fileattr.xml 이 담고 있는 기본 내용은 다음과 같다.

 

     <?xml version="1.0"?>
     <fileattr>
       <file name="filename">
          <watcher name="user_id"/>
       </file>
     </fileattr>

 

     내용을 보면 알겠지만 버젼관리 대상 파일들 정보를 기술만 해주면 된다. 파일이 많다면 은근히 노가다 이다.

     이 파일을 만든 후 encoding 부분 첨부 한다. 복구후에 한글에 대한 처리가 된 fileattr.xml 예는 다음과 같다.

 

<?xml version="1.0" encoding="EUC-KR"?>
<fileattr>
  <file name="CloseDlg.cpp">
    <watcher name="viking"/>
  </file>
  <file name="CloseDlg.h">
    <watcher name="viking"/>
  </file>
  <file name="FileUploadServer.cpp">
    <watcher name="viking"/>
  </file>
</fileattr>

    음 이러면 문제가 해결 되는 줄 알았다.

 

    이렇게 fileattr.xml 을 만든후에 한글명칭 파일을 commit 하면 잘 된다. 딱 한번만...

    commit 후 fileattr.xml 을 열어보면 encoding 부분이 UTF-8 로 바뀌어 있다. 젠장....

 

    이 문제에 대한 해결 방법은 의외로 간단하다. 한글명칭 파일에 대한 version 관리도 하고 싶다면

    최초 module 을 새로이 만들당시 module 이름에 한글을 포함시키면 된다.

    한글이 포함된 형태로 module 이름을 지정하면 fileattr.xml 에서 파일명을 관리하지 않는다.

 

    이전 버젼의 CVSNT 에서는 fileattr.xml 에서 directory 만 관리했지 파일명은 관리하질 않았다.

 

 

   

 

 

================================================================================================================

출처 : http://suh1978.egloos.com/800549

CVS 메모

# 아래의 글은 "실용주의 프로그래머를 위한 버전관리 using CVS"를
   보고 메모한 것입니다.




1. 관련 사이트

   http://www.cvshome.org
   http://www.wincvs.org
   http://www.tortoisecvs.org : 1. 윈도우 탐색기에 cvs client를 add in 하는 방식
                                            2. MS VSS에 add in 하는 방식도 있다
   http://sourceforge.net/projects/cvsscpplugin


2. 버전 관리 시스템의 구조 잡기

    - 시작하기 전에, 저장소에 접근할 때 쓸 효율적이면서 안전한 방법을 확보해야 한다

    - 일단 접근한 다음에는, 일상적으로 쓰게 될 CVS 명령들의 간단한 집합이 있다

    - 여러분의 회사가 개발한 모든 프로젝트는 각각 별도의 모듈로 만들어져야 한다.
      프로젝트 하나의 전체 소스를 한 곳에서 체크아웃할 수 있어야 한다

    - 독립적으로 작업할 수 있는 하위 컴포넌트가 프로젝트에 들어있거나,
      여러프로젝트에서 컴포넌트들을 공유하고 싶다면, 그 컴포넌트들은 따로
      이름이 붙은 모듈로 저장해야 한다

    - 프로젝트에(소프트웨어 벤더 또는 오픈 소스 프로젝트 같은) 써드파티의
      코드가 포함된다면, 이것도 관리에 넣을 자원으로 다루어야 한다

    - 개발자는 릴리즈, 버그해결, 커다른 코드 실험 같이 프로젝트 진행상 중요한
      지점을 표시하기 위해 꼬리표를 사용해야 한다


3. 명령어

   cvs -d ~/sandbox init : CVS의 저장소 지정
                                     (-d 옵션은 CVS 저장소 위치를 지정)

   cvs -d ~/sandbox import -m " " sesame sesame initial :
                                     sesame 이름을 갖는 프로젝트 개설
                                     (-m 옵션은 메모추가)

   cvs -d ~/sandbox co sesame :
                                     (co : checkout)

   cvs status {filenames} : (화일명, 하나도 되고, 여러개의 상태도 볼 수 있다)

   cvs diff {filenames} :     (출력 라인중에 "6a7, 10"의 말뜻은 6번째
                                       이후에 7~ 10번째 줄이 추가되었다는 뜻)

   cvs diff --side-by-side {filenames} :
                                      저장소와 로컬의 화일을 나란히 비교

   cvs diff -rHEAD {filenames} :
                                      최신 개정판과 로컬화일을 비교한다 (r : Revision)

   cvs commit -m "~~~~" :
                                      로컬의 내용중 수정된 모든 화일을 저장소에 저장

   cvs log {filenames} :
                                      지정한 화일의 기록(log)를 본다

   cvs log -r1.5 {filenames} :
                                      revision 1.5 버전의 기록을 본다

   cvs update :                 최신 개정판으로 갱신

  
 

4. 문제해결

   (1) 같은 화일의 check in 한 두 개발자 사이에 한 화일내의 서로 다른 부분이 수정된 경우
   
       - 두번째 check out 한 commit 명령어에서 아래와 같이 충돌에 대한 오류메세지가 나온다

         ~~~~~~~~
         cvs commit: Up-to date check failed for 'Number.txt'
         cvs [commit aborted]: correct above errors first!
         ~~~~~~~~

        - 이제 두번째 개발자는 최신 버전으로 갱신(cvs update)한다
          아래와 같은 메세지가 나오는데, 러컬버전와 저장소의 버전간의 차이를 병합하였음을
          말해준다

         ~~~~~~~~
         Merging differences between 1.2 and 1.3 into Number.txt
         M Number.txt
         ~~~~~~~~

   (2) 같은 화일의 check in 한 두 개발자 사이에 한 화일내의 서로 같은 부분이 수정된 경우

       - 두번째 check out 한 commit 명령어에서 아래와 같이 충돌에 대한 오류메세지가 나온다

         ~~~~~~~~
         cvs commit: Up-to date check failed for 'Number.txt'
         cvs [commit aborted]: correct above errors first!
         ~~~~~~~~

        - 이제 두번째 개발자는 최신 버전으로 갱신(cvs update)한다
          병합도중 충돌이 발생했음을 말해주고 있다

         ~~~~~~~~
         Merging differences between 1.2 and 1.3 into Number.txt
         rcsmerge: warning: conflicts during merge
         cvs update: coflicts found in Number.txt
         C Number.txt
         ~~~~~~~~

        - 두 개발자간의 협의를 통해 충돌부분의 해결점을 찾았다.
          소스의 충돌 부분을 처리기 위해 충돌발생한 화일을 열어본다
          아래와 같은 경우 <<~ 표시과 >>~ 표시의 부분이 충돌발생 부분이다
          cvs log -r1.5 Nubmer.txt 와 같은 명령으로 수정된 로그를 확인하고
          <<~ 부분, ==~ 부분, >>~ 부분을 지우고, A, B중에 반영할 부분을
          결정한 다음에 수정하고 다시 commit 하면 된다

         ~~~~~~~~
         <<<<<<<<<< Number.txt
         A
         ============
         B
         >>>>>>>>>> 1.5
         ~~~~~~~~
신고

'05.IDE' 카테고리의 다른 글

Eclipse 4.2 + plugins  (0) 2012.08.30
Runtime ClassNotFoundExceptions may result 문제 해결  (0) 2011.05.16
CVS fileattr.xml 에러 발생 해결  (0) 2009.10.20
Subversion을 이용한 형상관리  (0) 2009.10.08
TOW All-in-One 설치하기  (0) 2009.09.29
Posted by Stewie

형상관리 개요

  • 적용 전 vs. 적용 후
  • 방식
    • Copy-Modify-Merge
    • Lock-Modify-Unlock
  • 분산버전관리시스템
    • CVS
    • Subversion
    • VSS
    • ClearCase

Subversion 개요

  • 개요
  • 기능
  • 용어
  • 작업 사이클

Subversion 시스템 구성

  • 서버
    • 리눅스
    • 유닉스
    • 아파치

Subversion Server 설치

  • 저장소 초기화
  • 계정 설정

TortoiseSVN 설치 및 실습

  • init
  • 예제 코드 작성
  • 명령어별
    • import
    • checkout
    • add
    • commit
    • update
    • remove
    • log
    • revert
    • conflict
    • tagging
    • branching
    • statistic
  • 저장소 브라우저

Subversive on Eclipse 설치 및 실습

  • 예제 코드 작성
  • 명령어별
    • import
    • checkout
    • add
    • commit
    • update
    • remove
    • log
    • revert
    • conflict
    • tagging
    • branching

SVN 더 잘 쓰기

  • 저장소 분리
  • 커밋 전략
  • 태깅
  • 브랜칭
  • 충돌을 줄이려면
  • 기타
    • CI와의 통합

이슈 트래커

  • 개요
  • 이슈 트래커 종류
  • 설치 및 설정
  • 등록
  • 편집
  • 검색
  • 종료

Mylyn 설치 및 실습

  • 플러그인 설치 및 설정
  • Task Context
  • Activate/Deactivate
  • Attach
  • Scheduling

이슈 트래커 더 잘 쓰기

Summary

신고

'05.IDE' 카테고리의 다른 글

Eclipse 4.2 + plugins  (0) 2012.08.30
Runtime ClassNotFoundExceptions may result 문제 해결  (0) 2011.05.16
CVS fileattr.xml 에러 발생 해결  (0) 2009.10.20
Subversion을 이용한 형상관리  (0) 2009.10.08
TOW All-in-One 설치하기  (0) 2009.09.29
Posted by Stewie

TOW는 윈도우에서 Trac을 쉽게 만들어 사용할 수 있도록 해주는 all-in-one 인스톨 프로그램이다. 
(인스톨 프로그램이기 보다는 그냥 디렉토리만 덩그러니 넣어주면 끝..)

간단한 사용방법 이며 필수적인 내용을 적어놓은다.

1. 사용자 등록
C:\TOW>add-user.bat <UserName> <Password>
2. 프로젝트 등록
C:\TOW>create-svn-repo.bat <ProjectName>
C:\TOW>create-trac-repo.bat <ProjectName>

 해준 후 http://localhost:8080/projects/<ProjectName> 으로 접속하면 됨.


3. Admin 설정 방법

C:\TOW>trac-admin.bat <ProjectName> permission add stmoon TRAC_ADMIN

 

4. 시작시 항상 데몬으로 띄우는 방법 (실패)

C:\>sc create trac binPath= “c:\TOW\start-tow.bat” start= auto displayname= “Trac Service of TOW”

 

신고

'05.IDE' 카테고리의 다른 글

Eclipse 4.2 + plugins  (0) 2012.08.30
Runtime ClassNotFoundExceptions may result 문제 해결  (0) 2011.05.16
CVS fileattr.xml 에러 발생 해결  (0) 2009.10.20
Subversion을 이용한 형상관리  (0) 2009.10.08
TOW All-in-One 설치하기  (0) 2009.09.29
Posted by Stewie


티스토리 툴바