IvyDE
  1. IvyDE
  2. IVYDE-267

Allow specifying source and javadoc mapping on binaries directly in the ivy.xml

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.2.0.beta1
    • Component/s: None
    • Labels:
      None

      Description

      IvyDE tries to automatically guess which source artifact corespond to the binary ones so they get proper attachement with Eclipse. Sometimes IvyDE cannot guess easily. Maybe the information could be provided directly by the module descriptor, with some extra metadata.
      For instance we could imagine a ivyde namespace and this:

      <?xml version="1.0" encoding="UTF-8"?>
      <ivy-module version="2.0" xmlns:ivyde="http://ant.apache.org/ivy/ivyde/ns/">
          <info organisation="myorg" module="mymodule" revision="1.0" />
          <configurations>
          ...
          </configurations>
          <publications>
              <artifact name="myjar"      type="jar"    ext="jar" ivyde:source="mysources" ivyde:javadoc="myjavadocs" />
              <artifact name="mysources"  type="source" ext="jar" />
              <artifact name="myjavadocs" type="javadoc" ext="jar" />
          </publications>
          <dependencies>
          ...
          </dependencies>
      </ivy-module>
      

      Another proposal from Gerard Fernandes:

      One way to specify this would be the use of XML id and idref attributes (because these can be enforced by XSD schemas, if ivy.xml eventually goes to schema validation).

      e.g. the following (note the hack renaming the source file to mimic the binary artifact name):

      <dependency org="org.junit" name="junit" rev="4.8.2" conf="TEST->default">
      <artifact name="junit-dep" />
      <artifact name="junit-dep" type="src" ext="zip" />
      </dependency>

      could be re-written as:

      <dependency org="org.junit" name="junit" rev="4.8.2" conf="TEST->default">
      <artifact id="junit" name="junit-dep" />
      <artifact idref="junit" name="junit" type="src" ext="zip" />
      </dependency>

      or:

      <dependency org="org.junit" name="junit" rev="4.8.2" conf="TEST->default">
      <artifact name="junit-dep" src-ref="junit-src" />
      <artifact id="junit-src" name="junit" type="src" ext="zip" />
      </dependency>

        Activity

        Hide
        Nicolas Lalevée added a comment -

        I finally implemented an IvyDE namespace

        Show
        Nicolas Lalevée added a comment - I finally implemented an IvyDE namespace

          People

          • Assignee:
            Nicolas Lalevée
            Reporter:
            Nicolas Lalevée
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development