2011-02-04 1570 views

Respuesta

2

que sea, no había xsd en el pasado el tiempo empezó esta discusión, pero al menos desde mayo de 2011, el esquema de la hiedra está bien documentada en

http://ant.apache.org/ivy/schemas/ivy.xsd

que está vinculada a la derecha de la documentación en http://ant.apache.org/ivy/

así, para empezar de nuevo usando el esquema, sólo necesita:

<?xml version="1.0" encoding="UTF-8"?> 
<project name="yourproject" 
     xmlns:ivy="antlib:org.apache.ivy.ant" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd" 
> 
<!-- … --> 
+0

Ese es el XSD incorrecto.Ese XSD es para el archivo "ivy.xml". Observe que no tiene el elemento "resolver". –

0

Creo que this discussion podría ayudarlo. Parece que no hay xsd para las tareas de la hormiga de la hiedra, pero Eclipse se autocompleta.

+0

sí, no xsd para hormigas hiedra tareas aviables. pero encontré la manera de hacer autocompletar en IDIEL IDEA – popalka

0

sí, no xsd para hiedra y tareas avialable. pero he encontrado la manera de hacer autocompletar en IntelliJ IDEA en el expediente de construcción Ant necesita definir tarea adicional:

<property name="ivy.jar.dir" value="C:/Apache/apache-ivy-2.2.0/"/> 


<taskdef resource="org/apache/ivy/ant/antlib.xml" 
       uri="antlib:org.apache.ivy.ant"> 
     <classpath> 
       <fileset dir="${ivy.jar.dir}" includes="*.jar"/> 
     </classpath> 
</taskdef> 
4

simplemente copié el tarro de hiedra a INTELLIJ_HOME/lib/ant y ahora IntelliJ puede resolver las tareas de hiedra. O importe este archivo ant a su proyecto ant, en realidad es el primer ejemplo de hiedra en documentación de hiedra, asegúrese de depender siempre del destino install-ivy, agregue su archivo ant a idea en la ventana de compilación ant y no iguala tiene que instalar hiedra y la idea reconoce las tareas de hiedra.

<property name="ivy.jar.dir" value="${user.home}/.ivy2/jars" /> 
<property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" /> 

<property name="ivy.install.version" value="2.2.0" /> 


<target name="check-ivy-installed" unless="INTERN-ivy.jar.exists"> 
    <available property="INTERN-ivy.jar.exists" file="${ivy.jar.file}"/> 
</target> 


<target name="download-ivy" depends="check-ivy-installed" unless="INTERN-ivy.jar.exists"> 
    <echo message="downloading and installing ivy"/> 
    <mkdir dir="${ivy.jar.dir}"/> 
    <!-- download Ivy from web site so that it can be used even without any special installation --> 

    <get src="http://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar" 
     dest="${ivy.jar.file}" usetimestamp="true"/> 
    <echo message="ivy installed"/> 
</target> 

<!-- ================================= 
     target: install-ivy   
     this target is not necessary if you put ivy.jar in your ant lib directory 
     if you already have ivy in your ant lib, you can simply remove this 
     target and the dependency the 'go' target has on it 
    ================================= --> 
<target name="install-ivy" depends="download-ivy" description="--> install ivy"> 
    <!-- try to load ivy here from local ivy dir, in case the user has not already dropped 
      it into ant's lib dir (note that the latter copy will always take precedence). 
      We will not fail as long as local lib dir exists (it may be empty) and 
      ivy is in at least one of ant's lib dir or the local lib dir. --> 
    <echo message="Installing ivy"/> 
    <path id="ivy.lib.path"> 
     <fileset dir="${ivy.jar.dir}" includes="*.jar"/> 
    </path> 
    <taskdef resource="org/apache/ivy/ant/antlib.xml" 
       uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/> 
</target>  

0

plugin de XML para jEditAntCompleteTask define (tarea ant) ​​que produce un archivo XML denominado ant-complete.xml. El archivo resultante se ve de la siguiente manera:

<element-list> 
<!-- ... --> 
<element name="classpath" 
content="(fileset|dirset|extdirs|existing|filelist|pathelement|path)"> 
<attribute name="id" type="ID" /> 
<attribute name="location" type="CDATA" /> 
<attribute name="cache" type="(true|false|on|off|yes|no)" /> 
<attribute name="refid" type="CDATA" /> 
<attribute name="description" type="CDATA" /> 
<attribute name="path" type="CDATA" /> 
</element> 
<!-- ... --> 

el archivo generado puede ser descargado como XML plugin archive. Abra XML.jar y busque el directorio xml/completion. Su sintaxis se define en xml-completion-info.dtd.

El código de la tarea no contiene una licencia explícita, pero es al menos GPL. De todos modos, probablemente no necesite distribuir esa tarea, solo para usarla y esto no requiere ninguna licencia.

No puedo evaluar la usabilidad del archivo xml resultante, pero jEdit lo usa para autocompletar.

4

Para completar la respuesta de Shalom, la ubicación donde se debe agregar ivy.jar para IntelliJ IDEA Community Edition es INTELLIJ_HOME/lib/ant/lib (una carpeta más para ir).

Quizás también se aplique a la versión completa.