wake-up-neo.net

Maven Java EE-Konfiguration

In meinem Maven-Projekt habe ich dieses Effektive POM:

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.Apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>spring</groupId>
  <artifactId>example</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <name>example</name>
  <url>http://maven.Apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.0.3.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.ws</groupId>
      <artifactId>spring-ws-core</artifactId>
      <version>2.1.4.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-web</artifactId>
      <version>3.2.3.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-config</artifactId>
      <version>3.2.3.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-core</artifactId>
      <version>4.3.5.Final</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-validator</artifactId>
      <version>5.1.0.Final</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-orm</artifactId>
      <version>4.0.3.RELEASE</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>4.0.3.RELEASE</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
  <repositories>
    <repository>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <id>central</id>
      <name>Central Repository</name>
      <url>http://repo.maven.Apache.org/maven2</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <releases>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <id>central</id>
      <name>Central Repository</name>
      <url>http://repo.maven.Apache.org/maven2</url>
    </pluginRepository>
  </pluginRepositories>
  <build>
    <sourceDirectory>C:\Users\Kleber\Downloads\Projetos\example\src\main\Java</sourceDirectory>
    <scriptSourceDirectory>C:\Users\Kleber\Downloads\Projetos\example\src\main\scripts</scriptSourceDirectory>
    <testSourceDirectory>C:\Users\Kleber\Downloads\Projetos\example\src\test\Java</testSourceDirectory>
    <outputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\classes</outputDirectory>
    <testOutputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\test-classes</testOutputDirectory>
    <resources>
      <resource>
        <directory>C:\Users\Kleber\Downloads\Projetos\example\src\main\resources</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>C:\Users\Kleber\Downloads\Projetos\example\src\test\resources</directory>
      </testResource>
    </testResources>
    <directory>C:\Users\Kleber\Downloads\Projetos\example\target</directory>
    <finalName>example-0.0.1-SNAPSHOT</finalName>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.3</version>
        </plugin>
        <plugin>
          <artifactId>maven-Assembly-plugin</artifactId>
          <version>2.2-beta-5</version>
        </plugin>
        <plugin>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-release-plugin</artifactId>
          <version>2.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.Apache.Tomcat.maven</groupId>
        <artifactId>Tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
          <url>http://localhost:8080/manager/text</url>
          <server>TomcatServer</server>
          <path>/webappExample</path>
          <username>user001</username>
          <password>123</password>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-clean-plugin</artifactId>
        <version>2.4.1</version>
        <executions>
          <execution>
            <id>default-clean</id>
            <phase>clean</phase>
            <goals>
              <goal>clean</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-install-plugin</artifactId>
        <version>2.3.1</version>
        <executions>
          <execution>
            <id>default-install</id>
            <phase>install</phase>
            <goals>
              <goal>install</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.5</version>
        <executions>
          <execution>
            <id>default-resources</id>
            <phase>process-resources</phase>
            <goals>
              <goal>resources</goal>
            </goals>
          </execution>
          <execution>
            <id>default-testResources</id>
            <phase>process-test-resources</phase>
            <goals>
              <goal>testResources</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.10</version>
        <executions>
          <execution>
            <id>default-test</id>
            <phase>test</phase>
            <goals>
              <goal>test</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <executions>
          <execution>
            <id>default-testCompile</id>
            <phase>test-compile</phase>
            <goals>
              <goal>testCompile</goal>
            </goals>
          </execution>
          <execution>
            <id>default-compile</id>
            <phase>compile</phase>
            <goals>
              <goal>compile</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.1.1</version>
        <executions>
          <execution>
            <id>default-war</id>
            <phase>package</phase>
            <goals>
              <goal>war</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.7</version>
        <executions>
          <execution>
            <id>default-deploy</id>
            <phase>deploy</phase>
            <goals>
              <goal>deploy</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.0</version>
        <executions>
          <execution>
            <id>default-site</id>
            <phase>site</phase>
            <goals>
              <goal>site</goal>
            </goals>
            <configuration>
              <outputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\site</outputDirectory>
              <reportPlugins>
                <reportPlugin>
                  <groupId>org.Apache.maven.plugins</groupId>
                  <artifactId>maven-project-info-reports-plugin</artifactId>
                </reportPlugin>
              </reportPlugins>
            </configuration>
          </execution>
          <execution>
            <id>default-deploy</id>
            <phase>site-deploy</phase>
            <goals>
              <goal>deploy</goal>
            </goals>
            <configuration>
              <outputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\site</outputDirectory>
              <reportPlugins>
                <reportPlugin>
                  <groupId>org.Apache.maven.plugins</groupId>
                  <artifactId>maven-project-info-reports-plugin</artifactId>
                </reportPlugin>
              </reportPlugins>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <outputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\site</outputDirectory>
          <reportPlugins>
            <reportPlugin>
              <groupId>org.Apache.maven.plugins</groupId>
              <artifactId>maven-project-info-reports-plugin</artifactId>
            </reportPlugin>
          </reportPlugins>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <reporting>
    <outputDirectory>C:\Users\Kleber\Downloads\Projetos\example\target\site</outputDirectory>
  </reporting>
</project>

In diesem Moment wird auf der Registerkarte "Markierungen" in meiner Eclipse-IDE dieser Fehler angezeigt:

Description Resource    Path    Location    Type
Dynamic Web Module 3.0 requires Java 1.6 or newer.  example     line 1  Maven Java EE Configuration Problem
One or more constraints have not been satisfied.    example     line 1  Maven Java EE Configuration Problem

Ich versuche, diese Konfiguration im Build-Pfad aus meinem Projekt zu korrigieren (In Eigenschaften/Java-Build-Pfad), aber wenn ich Maven> Projekt aktualisieren ausführe, wurde der Wert für diese Option auf den vorherigen Wert zurückgesetzt.

Wo sollte ich diese Option ändern, um diesen Fehler zu beheben?

17
Kleber Mota
  1. Gehen Sie zum Projekt Build Path und ändern Sie die Version der Java-Bibliothek in 1.7.
  2. Gehen Sie zu Eclipse-Einstellungen -> Java -> Compiler -> Ändern Sie die Compliance-Ebene in 1.7
  3. Klicken Sie mit der rechten Maustaste auf Projekt -> Eigenschaften -> Projektfacetten
  4. Deaktivieren Sie Dynamic Web Module und klicken Sie auf Sich bewerben (Deaktivieren Sie auch JavaServer Faces, wenn Sie das hatten)
  5. Ändern Sie die Java-Facettenversion in 1.7 und klicken Sie auf Sich bewerben
  6. Fügen Sie den Dyanmic Web Module v3.0 hinzu, übernehmen Sie. 

Die Facettenkonfiguration von Eclipse ist fehlerhaft. Stellen Sie sicher, dass Sie Apply zwischen dem Prüfen und dem Deaktivieren von Facetten berühren.

Links:

  • Kann Version von Project Facet Dynamic Web Module nicht in 3.0 ändern?
  • Version des Projektfacetten Dynamic Web Module in 2.5 ändern

  • 43
    GGrec

    Die Lösung von GGrec funktioniert für mich nicht. Ich kann dieses Problem beheben, indem ich in pom.xml Folgendes hinzufügt:

    <build>
         <finalName>finalName</finalName>
         <plugins>
    
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source> <!-- yours Java version -->
                    <target>1.8</target> <!-- yours Java version -->
                </configuration>
            </plugin>
    
        </plugins>
    </build>
    

    UPDATE: Außerdem habe ich herausgefunden, dass jedes Mal, wenn Sie den Befehl mvn install für diese pom.xml ausführen, die vorherige Konfiguration überschrieben wird. Die richtige Lösung ist, diese Version entweder aus pom.xml zu entfernen und in den Eclipse-Optionen einzurichten oder einfach die Konfiguration aus pom.xml zu verwenden.

    28
    Kefas

    Befolgen Sie die obigen Schritte zur Fehlerbehebung. Aktualisieren Sie Ihr Maven-Projekt.

    Klicken Sie mit der rechten Maustaste auf Ihr Projekt -> Maven -> Projekt aktualisieren

    Oder einfach Alt + F5.

    Hoffe das könnte jemandem helfen.

    6
    Hem M

    Auch als Kefas benutze ich Java Version 1.7 und es funktioniert!

     <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
             <source>1.7</source> 
             <target>1.7</target> 
        </configuration>
    </plugin>
    
    3
    Nordknight

    Die obigen Vorschläge sind hilfreich für mich! Klicken Sie mit der rechten Maustaste auf Projekt -> Eigenschaften -> Projektfacetten, und ändern Sie die Java-Facettenversion auf 1.7.

    Wenn es nicht funktioniert, fügen Sie den folgenden Code zu pom.xml hinzu:

    <build>
        <finalName>finalName</finalName>
        <plugins>
            <plugin>
                <groupId>org.Apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source> <!-- yours Java version -->
                    <target>1.7</target> <!-- yours Java version -->
                </configuration>
            </plugin>
        </plugins>
    </build>
    

    Speichern Sie pom.xml.

    Klicken Sie dann mit der rechten Maustaste auf Projekt -> Maven -> Projekt aktualisieren.

    2
    Ethan

    Das hört sich vielleicht dumm an, aber ich habe gerade Projekt-> Reinigen und dann Maven-> Update durchgeführt. 

    Problem gelöst.

    1
    Puneet

    Ich verwende Java 1.8. Fehler behoben:.

    Aus pom entfernen:

    <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
    

    Es wird sich darüber beklagen, dass Pom nicht auf dem neuesten Stand ist. Wenn man das Update schnell aktualisiert hat, erhält man eine ganze Reihe von Fehlern.

    RE-ADD zu pom:

    <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
    

    Aktualisierter Maven und alle Fehler werden gelöscht.

    0
    kwm

    Geänderte Version zu 3.1 und den Tags und zu 1.7 

     <plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
         <source>1.7</source> 
         <target>1.7</target> 
    </configuration>
    

    0
    Yuri Ferreira

    Das funktioniert für mich:

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.Apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.3</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.Apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.6</version>
                    <configuration>
                        <warSourceDirectory>src/main/webapp</warSourceDirectory>
                        <warName>mfp</warName>
                        <failOnMissingWebXml>false</failOnMissingWebXml>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <finalName>myprojectname</finalName>
    </build>
    
    0
    Milos

    Ich habe unter Codezeile in pom.xml hinzugefügt und es hat funktioniert.

    <properties>
            <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
    </properties>
    
    0
    Vineet Kumar

    Ich musste die Maven-Einstellungen in Window-> Preferences-> Maven-> User Settings auf "C:\Development\Apache-maven-3.5.3\conf\settings.xml" zurücksetzen.

    0
    handro1104

    Die richtige Antwort lautet: - Nur eine einfache Sache. In den meisten Fällen können Sie die Dynamic Web Module-Version nicht auf 3.0 ändern. Sie muss standardmäßig auf 2.3 oder 2.4 eingestellt sein. Es wird nicht funktionieren. Klicken Sie mit der rechten Maustaste auf Projekt -> Voreinstellung -> Projektfacette -> Deaktivieren Sie das dynamische Webmodul und ändern Sie die Version auf 3.0, und überprüfen Sie es. und ich denke, Sie müssen die neueste Version dafür (d. h. 1.7 oder höher) ändern. Danach klicken Sie auf Übernehmen und schließen.

    dann aktualisieren Sie das Maven-Projekt. Klicken Sie mit der rechten Maustaste auf Projekt. Wählen Sie Maven -> Projekt aktualisieren. Trotzdem wird der Fehler für 80% von uns weiter bestehen.

    Die echte Lösung ist hier 1> gehe zu deinem Arbeitsbereich-Ordner 2> gehe dann zu deinem Projekt-Ordner 3> suche nach .settings-Dateien (manchmal kann es ausgeblendet sein, dann blende es wieder ein. (So seltene Chance) 4> gehe hinein. Die Einstellungsdatei sucht dann nach der Datei org.Eclipse.wst.common.project.facet.core.xml und bearbeitet sie mit Notepad ++ oder etwas Ähnlichem. Geben Sie den Code hier ein. 5> Dies ist der Code darin

    <?xml version="1.0" encoding="UTF-8"?>
    <faceted-project>
      <fixed facet="wst.jsdt.web"/>
      <installed facet="Java" version="1.5"/>
      <installed facet="jst.web" version="2.4"/>
      <installed facet="wst.jsdt.web" version="1.0"/>
    </faceted-project>
    

    ändern Sie die jst.web-Version auf 3.0 wie folgt

    <?xml version="1.0" encoding="UTF-8"?>
    <faceted-project>
      <fixed facet="wst.jsdt.web"/>
      <installed facet="Java" version="1.5"/>
      <installed facet="jst.web" version="3.0"/>
      <installed facet="wst.jsdt.web" version="1.0"/>
    </faceted-project>
    

    dann aktualisiere endlich den maven .. dann starte die Eclipse oder eine andere IDE neu