2013-02-21 1 views
3

Ant 빌드 스크립트에서 fpt 작업의 클래스 경로를 직접 지정하고 싶습니다. 나는 시도 다음ftp 작업의 빌드 파일에 클래스 경로를 지정하는 방법

:

Could not create type ftp due to java.lang.NoClassDefFoundError:  org/apache/commons/net/ftp/FTPClientConfig 

두 번째 방법은 나에게 다음과 같은 오류 메시지를 제공합니다 :

<target name="ftp-upload" depends="build-html">  
    <echo message="Ftp upload started with user ${user}" /> 
<ftp verbose="yes" 
      remotedir="${ftp.dir}" 
    server="${server}" 
      userid="${user}" 
    password="${password}" 
    depends="yes"> 
     <fileset dir="${mystuff.dir}/.." /> 
    <classpath refid="build.classpath" /> 
</ftp> 
</target> 

<target name="ftp-upload" depends="build-html">  
<echo message="Ftp upload started with user ${user}" /> 
<ftp verbose="yes" 
      remotedir="${ftp.dir}" 
    server="${server}" 
      userid="${user}" 
    password="${password}" 
    depends="yes" 
      classpathref="build.classpath" 
    > 
     <fileset dir="${mystuff.dir}/.." /> 
</ftp> 
</target> 

첫 번째 방법 것은 나에게 다음과 같은 오류 메시지를 제공합니다

ftp doesn't support the "classpathref" attribute 

ftp 작업을위한 빌드 스크립트에서 클래스 경로를 설정하는 것이 가능합니까? 아니면 내 서버에서 빌드 스크립트 외부에서 클래스 패스를 사용해야합니까? 빌드 스크립트 자체를 포함시키는 것이 좋을 것입니다.

솔루션 :

은 그냥 클래스 경로를 참조하여 FTP 작업을 다시 정의

<taskdef name="ftp" classname="org.apache.tools.ant.taskdefs.optional.net.FTP"> 
<classpath> 
    <pathelement location="\lib\commons-net-1.4.0.jar"/> 
</classpath> 
</taskdef> 

답변

관련 문제