2010-10-25 9 views
22

Sto tentando di installare il software sul mio server Debian Lenny. In particolare, Capture-HPC. Ho installato il server VMWare, insieme a tutti i prerequisiti. Quando vado a eseguire ant nella directory, ottengo il seguente errore:Problemi ANT: net/sf/antcontrib/antcontrib.properties

[taskdef] Could not load definitions from resource net/sf/antcontrib/antcontrib.properties. It could not be found. 

Qualcuno ha qualche idea che cosa sta causando questo? I dettagli sulla mia installazione di formica seguono:

Apache Ant version 1.7.0 compiled on April 29 2008 
Buildfile: build.xml 
Detected Java version: 1.6 in: /usr/lib/jvm/java-6-sun-1.6.0.20/jre 
Detected OS: Linux 

E il file build.xml. . .

<?xml version="1.0"?> 
<project name="CaptureServer" xmlns:ac="antlib:net.sf.antcontrib" default="release" basedir="."> 
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/> 

<condition property="os" value="unix"> 
    <os family="unix"/> 
</condition> 
<condition property="os" value="windows"> 
    <os family="windows"/> 
</condition> 

<property environment="env"/> 
<property name="src" value="."/> 
<property name="build" value="build"/> 
<property name="lib" value="lib"/> 
<property name="release" value="release"/> 
<property name="classpath.build" value=".\lib\junit-4.4.jar"/> 
<property name="classpath.run" value="lib/junit-4.4.jar"/> 


<path id="classpath"> 
    <fileset dir="${lib}"> 
     <include name="*.jar"/> 
    </fileset> 
</path> 

<target name="init"> 
     <mkdir dir="${build}"/> 
     <mkdir dir="${release}"/> 
</target> 

<target name="compile" depends="init"> 
     <!-- Compile the java code -->   
     <javac srcdir="${src}" destdir="${build}" debug="true" debuglevel="lines,vars,source" classpath="${classpath.build}"/> 

     <!-- Compile the revert code --> 
     <if> 
     <equals arg1="${os}" arg2="windows" /> 
     <then> 
     <exec executable="compile_revert_win32.bat"/> 
     </then> 
     <else> 
     <exec command="sh" executable="./compile_revert_linux.sh"/> 
     </else> 
    </if> 

</target> 

<target name="jar" depends="compile"> 
    <mkdir dir="${build}/jar"/> 
    <jar destfile="${build}/jar/CaptureServer.jar" basedir="${build}"> 
     <manifest> 
      <attribute name="Class-Path" value="${classpath.run}"/> 
      <attribute name="Main-Class" value="capture.Server"/> 
     </manifest> 
    </jar> 
</target> 

<target name="release" depends="clean,compile,jar"> 
    <copy file="${build}/jar/CaptureServer.jar" todir="${release}"/> 
    <copy file="./COPYING" todir="${release}"/> 
    <copy file="./Readme.txt" todir="${release}"/> 
    <copy file="./preprocessor_README.txt" todir="${release}"/> 
    <copy file="./input_urls_example.txt" todir="${release}"/> 
    <copy file="./config.xsd" todir="${release}"/> 
    <copy file="./config.xml" todir="${release}"/> 
    <copy todir="${release}/${lib}"> 
     <fileset dir="lib"/> 
    </copy> 

    <if> 
     <equals arg1="${os}" arg2="windows" /> 
     <then> 
     <copy file="${env.VIX_HOME}/libeay32.dll" todir="${release}"/> 
     <copy file="${env.VIX_HOME}/ssleay32.dll" todir="${release}"/> 
     <copy file="${env.VIX_HOME}/vix.dll" todir="${release}"/> 
     <copy file="./revert.exe" todir="${release}"/> 
     </then> 
     <else> 
     <exec executable="cp"> 
      <arg value="./revert"/> 
      <arg value="${release}"/> 
     </exec> 
     </else> 
    </if> 

    <zip destfile="./CaptureServer-Release.zip" basedir="release"/> 
</target> 

<target name="clean"> 
    <delete dir="${build}"/> 
    <delete dir="${release}"/> 
    <delete> 
     <fileset dir="." includes="revert.exe"/> 
     <fileset dir="." includes="revert"/> 
     <fileset dir="." includes="CaptureServer-Release.zip"/> 
    </delete> 
</target> 
</project> 
+0

Dopo installando antcontrib dovresti usare per il riferimento negli script di compilazione come net/sf/antcontrib/antcontrib.properties contiene solo le attività per le versioni di formiche prima di Ant 1.6.x – Rebse

risposta

27

Questo messaggio di errore indica che si sta tentando di caricare un compito non-core, ma la risorsa che definisce ulteriormente il compito non è presente (o non dove previsto).

Vedere le istruzioni di installazione here.

È possibile sia

  1. find/scaricare il vaso ant-contrib e metterlo nella propria installazione ant (come per l'opzione 1 nel link qui sotto); oppure
  2. Modifica il tuo file ant (come per l'opzione 2 nel link sopra) per includere il jar ant-contrib in un classpath nidificato.
+0

aggiornato. Hai il barattolo di formiche? – Synesso

+0

Dove dovrei cercare questo? Ho scaricato ant-contrib, ma non riesco a trovarlo nei file scaricati. Non sono esperto di formica. – Julio

+2

Hai scaricato ant-contrib-1.0b3-bin.zip? All'interno troverai ant-contrib-1.0b3.jar. Ignora il resto dei file. Inserisci il file jar nella directory lib all'interno dell'installazione della tua formica e riprova. – Synesso

6

Solution per Linux/Debian:

apt-get install ant-contrib 
export CLASSPATH=/usr/share/java/ant-contrib.jar 
15

Soluzione per Ubuntu:

sudo apt-get install ant-contrib 
sudo ln -s /usr/share/java/ant-contrib.jar /usr/share/ant/lib/ 
2

soluzione per CentOS/RHEL:

sudo yum install ant-contrib