2013-02-22 4 views
1

일식 PDE에서는 초보자입니다. Eclipse에서 피쳐 프로젝트를 만들었습니다. pde 도구를 사용하여 build.xml을 만들었습니다. , 이클립스에서 실행하면 , 그것은 잘 실행하지만 외부에서 실행할 때 다른 개미 스크립트 내 기능의 build.xml 파일을 호출하는 경우 이클립스에서, 또한 오류자동 빌드 스크립트에서 eclipse.idReplacer 오류가 발생했습니다.

Problem: failed to create task or type eclipse.idReplacer 
Cause: The name is undefined. 
Action: Check the spelling. 
Action: Check that any custom tasks/types have been declared. 
Action: Check that any <presetdef>/<macrodef> declarations have taken place. 

을 얻고있다 (터미널은 plugins/org.apache.ant_1.8.3.v20120321-1730/bin/./ant -verbose -debug -buildfile build.xml 사용) 나는 같은 예외를 얻고있다.

일식 블로그를 읽었습니다. 버그가 수정되었고 Andrew Niefer의 해결책이 제 경우에는 작동하지 않는 것 같습니다. 나는 또한 cvs와 git에서 org.eclipse.releng.eclipsebuilder를 다운로드하려고 시도했지만 다운로드에 실패했다.

어떤 아이디어가 문제 일 수 있습니까?

내 구성, 자바 버전 "1.7.0_09" 이클립스 플러그인 개발 환경 버전 : 3.6.2.r362_v20110203-7b7mFL2FET3dhHalh1iNZtL 빌드 ID : M20110210-1200

Fedora14-64bit

답변

0

이클립스에서 jar 파일 (ant-contrib-1.0b3을 다운로드하여 Eclipse/plugins/org.apache.ant_1.7.1.v20090120-1145/lib에 유지)을 가져올 수있다. - Preferences - > Ant -> Runtime ---> Ant Home Entries에 외부 Jar를 추가하십시오.

당신은 우리가 build.xml 파일을

+0

감사합니다. Leo, 불행히도 기업 정책으로 인해 코드를 공개 할 수 없습니다. – sailor

1

원인을 보자 수 : 이름이 정의되지 않습니다. eclipse.idReplacer가 알려지지 않음

Eclipse 외부에서 Ant를 실행 중이므로 특정 ANT '작업'이름은 정의되지 않습니다. (참고로 'eclipse.idReplacer'는 Java 클래스 org.eclipse.pde.internal.build.tasks.IdReplaceTask 파일/lib/pdebuild-antsrc/org/eclipse/pde/internal/build/tasks/IdloplaceTask.java .../eclipse/plugins/org.eclipse.pde.build_3.8.2.v20121114-140810/lib/pdebuild-ant.jar 이클립스 플러그인 (내 시스템에서) - 그 자바 클래스는 IdReplaceTask 클래스를 구현한다. Ant의 확장을 구현하는 데 사용되는 Task 클래스를 확장합니다.

문제는 독립형 Ant가 eclipse.idReplacer에 대해 알지 못한다는 것입니다. 새로운 'eclipse.idReplacer'작업의 이름으로 ... IdReplaceTask.class

<typedef name="eclipse.idReplacer" 
    classname="org.eclipse.pde.internal.build.tasks.IdReplaceTask"/> 

이 곳을 찾을 수 개미에게 정의되어 있는지 개미에게 당신의 build.xml에 개미 '형식 정의'태그 추가 ... 개미 명령 줄에서 '-lib'옵션을 추가하여 IdReplaceTask.class :

ant -f /mydir/moredir/build.xml -lib \app\androidDev\eclipse\plugins\org.eclipse.pde.build_3.8.2.v20121114-1 clean build.update.jar 

위의 명령에서 중요한 것은 병을 찾기 위해 Ant를 알려주는 '-lib ...'옵션입니다 ... IdReplaceTask는에 정의되어 있습니다.

관련 문제