# Maven 2, XDoclet ejbdoclet und Java 1.5



## maki (23. Jun 2008)

Komme gerade nicht weiter,

gibt es jemanden der schon mal das xdoclet-maven-plugin zum laufen gebracht bzw. einen link parat hat in dem beschrieben wird wie es wirklich funktioniert?

Bekomme den Fehler:

```
Error parsing File "Pfad zur Klasse:" Encountered "<" at line 19,
 column 29.
Was expecting one of:
    "extends" ...
    "{" ...
```
Stolpert also über die Generics, der Übeltäter ist die verwendete Version xjavadoc... trotz Googlen hab bis jetzt keine Anleitung gefunden die funktionieren würde.

Hier der relevante Ausschnitt aus meiner POM:

```
...
<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>xdoclet-maven-plugin</artifactId>
            <executions>
                <execution>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xdoclet</goal>
                    </goals>
 
                    <configuration>
                    	<tasks>
                    		<ejbdoclet verbose="true" force="true"
                    			ejbSpec="2.1"
                    			
                    			destDir="${project.build.directory}/generated-sources/xdoclet">
                    			<fileset
                    				dir="${project.build.sourceDirectory}">
                    				<include name="**/*Bean.java"></include>
                    			</fileset>
                    			<homeinterface />
                    			<remoteinterface />
                    			<localhomeinterface />
                    			<localinterface />
                    			<deploymentdescriptor
                    				destDir="${project.build.outputDirectory}/META-INF" />
                    		</ejbdoclet>
                    	</tasks> 
                    </configuration>

                </execution>
            </executions>
			<dependencies>
                    <dependency>
                        <groupId>ant</groupId>
                        <artifactId>ant</artifactId>
                        <version>1.6.5</version>
                    </dependency>
                </dependencies> 
        </plugin> 
..
```

Was mache ich falsch?
Verwende ich das falsche Plug-in?

Sachdienliche Hinweise werden jederzeit angenommen


----------



## maki (24. Jun 2008)

Falls noch jemand das Problem  haben sollte:

Das "alte" XDoclet Plugin kommt mit Java 5 nicht zurecht, wegen XJavadoc 1.1, das XDoclet2 Plugin für Maven ist noch Alpha.

Meine Lösung:
Anstatt dem XDoclet Plugin das antrun Plugin verwenden, die Dependencies in der POM eintragen, dann die Version 1.5-05061 von XJavadoc hier runterladen ("alte" XDoclet Plugin kommt mit Java 5 nicht zurecht, wegen XJavadoc 1.1), ins Repository deployen (musste das jar entpacken und die enthaltene jar hochladen???), fertig.


----------



## jcrouvi (11. Aug 2008)

maki hat gesagt.:
			
		

> Falls noch jemand das Problem  haben sollte:
> 
> Das "alte" XDoclet Plugin kommt mit Java 5 nicht zurecht, wegen XJavadoc 1.1, das XDoclet2 Plugin für Maven ist noch Alpha.
> 
> ...



Ich wollte das antrun Plugin nicht verwenden und habe es wie folgt erledigt:
1).
Die neueste Version von XJavadoc herunterladen (xjavadoc-1.5-snapshot050611.jar)

2).
Diese Version in das private Repository installieren:

```
mvn install:install-file -DgroupId=xdoclet -DartifactId=xjavadoc -Dversion=1.5-snapshot050611     -Dpackaging=jar -Dfile=xjavadoc-1.5-snapshot050611.jar
```

3).
Diese Version in pom.xml referenzieren

```
<plugin>
	    <groupId>org.codehaus.mojo</groupId>
	    <artifactId>xdoclet-maven-plugin</artifactId>

	    <executions>
	       <execution>
		  <phase>generate-sources</phase>
		  <goals>
		     <goal>xdoclet</goal>
		  </goals>
		  <configuration>
		     <tasks>
			<ejbdoclet
                        ...
			</ejbdoclet>
		     </tasks>
		  </configuration>
	       </execution>
	    </executions>
	    <dependencies>
	       <dependency>
		  <groupId>xdoclet</groupId>
		  <artifactId>xjavadoc</artifactId>
		  <version>1.5-snapshot050611</version>
	       </dependency>
	    </dependencies>
	 </plugin>
```


Es hat dann bei mir alles geklappt.


----------



## maki (11. Aug 2008)

Bist du trotz der Depedency zu einem SNAPSHOT noch in der Lage ein Release zu erstellen?


----------



## jcrouvi (12. Aug 2008)

Im Moment mache ich nur einige Tests mit Maven für eine Machbarkeitsstudie. Demzufolge kann ich mit dem SNAPSHOT arbeiten. Du hast aber recht, für ein Release wäre es nicht geeignet.


----------



## maki (12. Aug 2008)

Welche Repository SW nutzt ihr?

Solltest dir unbedingt die Artifactory ansehen, einfacher geht es nicht mehr imho.
Auch fand ich Hudson noch einfacher als Continuum, beides ist aber ok, bloss kein CruiseControl als CI Server nutzen, viel zu komplex & aufwändig.


----------



## jcrouvi (12. Aug 2008)

Wir verwenden kein Repository-SW. Ich "spiele" nur mit Maven und mache diese Tests allein.


----------



## maki (12. Aug 2008)

Ok, allerdings macht so ein "lokales zentrales Repository" Sinn, selbst wenn man alleine ist, bei mehreren Entwicklern ist es ein muss.
Wie gesagt, wenn das was wäre, würde ich auf jedenfall die Artifactory gegenüber einer Apache HTTP Server Lösung bevorzugen.


----------

