# Mit maven3 war bauen



## mavinatic (13. Aug 2012)

Hi Leute,

ich bin absoluter Beginner wenn es um das Thema Maven 3 geht. Ich würde gerne mein Projekt mit Maven 3 bauen lassen, jedoch habe ich davon keine Ahnung, ich habe bis jetzt Sourcen in einem Eclipse Projekt und möchte den nun zu einer war zusammenpacken lassen (und compilieren).

Ich habe schon eine POM.xml erstellt aber wenn ich in die WAR datei reingucke ist keine Klasse drinne. 
Was mache ich falsch?

[XML]<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.mycompany.app</groupId>
	<artifactId>myWebApp</artifactId>
	<version>1.0-SNAPSHOT</version>
	<packaging>war</packaging>
	<dependencies>
	</dependencies>
	<build>
		<finalName>my-webapp</finalName>
  </build>
</project>[/XML]

Gruß


----------



## hexx (13. Aug 2012)

Maven geht davon aus, dass dein Projekt einer vorgegebenen Ordnerstruktur folgt (Nennt sich Convention-over-Configuration, und macht grundsätzlich viel Sinn). Der Java-Quellcode liegt z.B immer unter {projectdir}/src/main/java. Wie du siehst, ist das eine anderer Aufabau, als ein Standard Eclipse Projekt.

Wenn das deine ersten Schritte mit Maven sind, solltest du erstmal die Grundlagen lernen. Schau dir einfach mal die kostenlosen Bücher von Sonatype an: Books / Support Sonatype.com

Zum Anfang z.B. "Maven by Examnple", da wird auch gezeigt, wie man ein war erzeugt. Wenn du dann Maven aus Eclipse nutzen willst, solltest du dir M2E (Maven Eclipse Integration) installieren. Damit kannst du dann auch Maven-konforme Projekte in Eclipse erzeugen.


----------



## mavinatic (13. Aug 2012)

Okay vielen Dank,

ich habe nun eine Frage zu eclipse, ich habe einige "Ressource Folder" und wenn ich das nach der genannten Struktur mache, werden auch sourceFolder als Ressource Folder angezeigt, wie kann ich das umstellen, weil ich dadurch die übersicht verliere?


----------



## hexx (13. Aug 2012)

> werden auch sourceFolder als Ressource Folder angezeigt



Du meinst Ressourcesnfolder als Sourcesfolder??

Ich bin jetzt nicht der Eclipse-Profi. Aber soweit ich weiß, gibt es in Eclipse kein entsprechendes Analog zum Maven Ressourcenfolder. Alles, was im Outputfolder landen soll muss als Sourcefolder angegeben werden.


----------



## mavinatic (13. Aug 2012)

> Du meinst Ressourcesnfolder als Sourcesfolder??



Genau! Okay


----------



## mavinatic (13. Aug 2012)

Tut mir leid, wenn ich doppeltposte, konnt es aber nicht editieren.

Ich habe hier ein Screenshot, weil ich beim bauen (mvn clean install) einen Error bekomme und ich weiß nicht was ich machen muss...die Wiki-Seite verstehe ich irgendwie nicht. Ich habe schon JEE Komponeten als Dependencies hinzugefügt.







[XML]  <dependencies>
   <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.1</version>
      <scope>test</scope>
    </dependency>
	<dependency>
      <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.0-alpha1</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.0-alpha1</version>
      </dependency>
	  <dependency>
		<groupId>javax</groupId>
		<artifactId>javaee-api</artifactId>
		<version>6.0</version>
		</dependency>
  </dependencies>[/XML]


----------



## hexx (13. Aug 2012)

1.
Woher hast du denn die URL zum Java.net repository her? Die offizielle ist das nicht: Java.net maven2 repository &mdash; Java.net

2.
Zur Problematik mit Sun Jars: Maven - Guide to Coping with Sun JARs

3.
In den Dependencies, die du gepostet hast, hab ich beim Überfliegen keine gefunden, die ihrerseits z.B. von javax.jms abhängt. Hast du noch mehr Abhängigketen in deinem Projekt. Man muss nicht die ofiziellen Sun Jars nehmen, die von Geronimo z.B. (The Central Repository - Geronimo) tun es auch.

Sind jetzt nur Tipps, in welche Richtung dein Problem liegen könnte. Ansonsten poste bitte eine kleinst mögliche Beispiel-POM, die das Ganze reproduziert.


----------

