繁体   English   中英

Maven pom.xml 问题(缺少项目构建错误“版本”)

[英]Maven pom.xml Problems (Project Build Error "version" is missing)

所以我的pom.xml的顶部看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"             
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com</groupId>
<artifactId>test</artifactId>
<packaging>war</packaging>
<version>0.0.2-SNAPSHOT</version>
<name>GWT Maven Archetype</name>

但是,在第一行我收到错误:

项目构建错误:缺少版本

后跟与artifactidgroupidmodel version相同的短语。 我不知道如何解决这个问题,我的一个朋友建议设置我所做的JAVA_HOME系统变量并将其设置为我的 JDK 路径。 然而什么都没有改变。 还有什么我可以尝试解决这个问题的吗? 我也听说过一些考虑系统变量和 java.home 的东西,但我并没有真正理解它们之间的区别以及如何解决我的问题。


编辑:这是完整的pom:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
    http://maven.apache.org/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>
<groupId>com</groupId>
<artifactId>test</artifactId>
<packaging>war</packaging>
<version>0.0.2-SNAPSHOT</version>
<name>GWT Maven Archetype</name>

<properties>
    <!-- Convenience property to set the GWT version -->
    <gwtVersion>2.7.0</gwtVersion>

    <!-- GWT needs at least java 1.6 -->
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt</artifactId>
            <version>${gwtVersion}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt-servlet</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt-user</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt-dev</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.11</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.googlecode.gwtupload</groupId>
        <artifactId>gwtupload</artifactId>
        <version>1.0.3</version>
    </dependency>
    <dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.2.1</version>
    </dependency>
    <dependency>
        <groupId>de.novanic.gwteventservice</groupId>
        <artifactId>gwteventservice</artifactId>
        <version>1.2.1</version>
    </dependency>
    <dependency>
        <groupId>org.easymock</groupId>
        <artifactId>easymock</artifactId>
        <version>3.3.1</version>
    </dependency>
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.8.1</version>
    </dependency>
    
    
</dependencies>

<build>
    <!-- Output classes directly into the webapp, so that IDEs and "mvn process-classes" 
        update them in DevMode -->
    <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/classes</outputDirectory>

    <plugins>

        <!-- GWT Maven Plugin -->
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>gwt-maven-plugin</artifactId>
            <version>2.7.0</version>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                        <goal>test</goal>
                        <goal>generateAsync</goal>
                    </goals>
                </execution>
            </executions>
            <!-- Plugin configuration. There are many available options, see gwt-maven-plugin 
                documentation at codehaus.org -->
            <configuration>
                <runTarget>test.html</runTarget>
                <modules>
                    <module>com.test.test</module>
                </modules>
                <copyWebapp>true</copyWebapp>
                <sourceLevel>1.7</sourceLevel>
            </configuration>
        </plugin>
    </plugins>
</build>

这是mvn package -X的输出:

C:\Users\user\git\git>mvn package -X
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T13:57:3
7+02:00)
Maven home: C:\Users\user\Downloads\apache-maven-3.3.3-bin (1)\apache-maven-3.
3.3\bin\..
Java version: 1.8.0_51, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.8.0_51\jre
Default locale: de_DE, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos"
[DEBUG] Created new class realm maven.api
[DEBUG] Importing foreign packages into class realm maven.api
[DEBUG]   Imported: javax.enterprise.inject.* < plexus.core
[DEBUG]   Imported: javax.enterprise.util.* < plexus.core
[DEBUG]   Imported: javax.inject.* < plexus.core
[DEBUG]   Imported: org.apache.maven.* < plexus.core
[DEBUG]   Imported: org.apache.maven.artifact < plexus.core
[DEBUG]   Imported: org.apache.maven.classrealm < plexus.core
[DEBUG]   Imported: org.apache.maven.cli < plexus.core
[DEBUG]   Imported: org.apache.maven.configuration < plexus.core
[DEBUG]   Imported: org.apache.maven.exception < plexus.core
[DEBUG]   Imported: org.apache.maven.execution < plexus.core
[DEBUG]   Imported: org.apache.maven.execution.scope < plexus.core
[DEBUG]   Imported: org.apache.maven.lifecycle < plexus.core
[DEBUG]   Imported: org.apache.maven.model < plexus.core
[DEBUG]   Imported: org.apache.maven.monitor < plexus.core
[DEBUG]   Imported: org.apache.maven.plugin < plexus.core
[DEBUG]   Imported: org.apache.maven.profiles < plexus.core
[DEBUG]   Imported: org.apache.maven.project < plexus.core
[DEBUG]   Imported: org.apache.maven.reporting < plexus.core
[DEBUG]   Imported: org.apache.maven.repository < plexus.core
[DEBUG]   Imported: org.apache.maven.rtinfo < plexus.core
[DEBUG]   Imported: org.apache.maven.settings < plexus.core
[DEBUG]   Imported: org.apache.maven.toolchain < plexus.core
[DEBUG]   Imported: org.apache.maven.usability < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.* < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.authentication < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.authorization < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.events < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.observers < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.proxy < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.repository < plexus.core
[DEBUG]   Imported: org.apache.maven.wagon.resource < plexus.core
[DEBUG]   Imported: org.codehaus.classworlds < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.* < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.classworlds < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.component < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.configuration < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.container < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.context < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.lifecycle < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.logging < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.personality < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.util.xml.Xpp3Dom < plexus.core
[DEBUG]   Imported: org.codehaus.plexus.util.xml.pull.XmlPullParser < plexus.cor
e
[DEBUG]   Imported: org.codehaus.plexus.util.xml.pull.XmlPullParserException < p
lexus.core
[DEBUG]   Imported: org.codehaus.plexus.util.xml.pull.XmlSerializer < plexus.cor
e
[DEBUG]   Imported: org.eclipse.aether.* < plexus.core
[DEBUG]   Imported: org.eclipse.aether.artifact < plexus.core
[DEBUG]   Imported: org.eclipse.aether.collection < plexus.core
[DEBUG]   Imported: org.eclipse.aether.deployment < plexus.core
[DEBUG]   Imported: org.eclipse.aether.graph < plexus.core
[DEBUG]   Imported: org.eclipse.aether.impl < plexus.core
[DEBUG]   Imported: org.eclipse.aether.installation < plexus.core
[DEBUG]   Imported: org.eclipse.aether.internal.impl < plexus.core
[DEBUG]   Imported: org.eclipse.aether.metadata < plexus.core
[DEBUG]   Imported: org.eclipse.aether.repository < plexus.core
[DEBUG]   Imported: org.eclipse.aether.resolution < plexus.core
[DEBUG]   Imported: org.eclipse.aether.spi < plexus.core
[DEBUG]   Imported: org.eclipse.aether.transfer < plexus.core
[DEBUG]   Imported: org.eclipse.aether.version < plexus.core
[DEBUG]   Imported: org.slf4j.* < plexus.core
[DEBUG]   Imported: org.slf4j.spi.* < plexus.core
[DEBUG] Populating class realm maven.api
[INFO] Error stacktraces are turned on.
[DEBUG] Reading global settings from C:\Users\user\Downloads\apache-maven-3.3.
3-bin (1)\apache-maven-3.3.3\bin\..\conf\settings.xml
[DEBUG] Reading user settings from C:\Users\user\.m2\settings.xml
[DEBUG] Reading global toolchains from C:\Users\user\Downloads\apache-maven-3.
3.3-bin (1)\apache-maven-3.3.3\bin\..\conf\toolchains.xml
[DEBUG] Reading user toolchains from C:\Users\user\.m2\toolchains.xml
[DEBUG] Using local repository at C:\Users\user\.m2\repository
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for C:\U
sers\user\.m2\repository
[INFO] Scanning for projects...
[DEBUG] Extension realms for project com:test:war:0.0.2-SNAPSHOT: (none)
[DEBUG] Looking up lifecyle mappings for packaging war from ClassRealm[plexus.co
re, parent: null]
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] 'modelVersion' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[u
nknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7
.0.pom, line 2, column 27
[ERROR] 'groupId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknow
n-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.po
m, line 2, column 27
[ERROR] 'artifactId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unk
nown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0
.pom, line 2, column 27
[ERROR] 'version' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknow
n-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.po
m, line 2, column 27
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-servlet:jar is
missing. @ line 37, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-user:jar is mis
sing. @ line 42, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-dev:jar is miss
ing. @ line 47, column 15
 @
[ERROR] The build could not read 1 project -> [Help 1]
org.apache.maven.project.ProjectBuildingException: Some problems were encountere
d while processing the POMs:
[ERROR] 'modelVersion' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[u
nknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7
.0.pom, line 2, column 27
[ERROR] 'groupId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknow
n-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.po
m, line 2, column 27
[ERROR] 'artifactId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unk
nown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0
.pom, line 2, column 27
[ERROR] 'version' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknow
n-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.po
m, line 2, column 27
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-servlet:jar is
missing. @ line 37, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-user:jar is mis
sing. @ line 42, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-dev:jar is miss
ing. @ line 47, column 15

        at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBu
ilder.java:422)
        at org.apache.maven.graph.DefaultGraphBuilder.collectProjects(DefaultGra
phBuilder.java:419)
        at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor
(DefaultGraphBuilder.java:410)
        at org.apache.maven.graph.DefaultGraphBuilder.build(DefaultGraphBuilder.
java:83)
        at org.apache.maven.DefaultMaven.buildGraph(DefaultMaven.java:491)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:219)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:862)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:197)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun
cher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav
a:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La
uncher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:
356)
[ERROR]
[ERROR]   The project com:test:0.0.2-SNAPSHOT (C:\Users\user\git\git\pom.xm
l) has 7 errors
[ERROR]     'modelVersion' is missing. @ [unknown-group-id]:[unknown-artifact-id
]:[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt
-2.7.0.pom, line 2, column 27
[ERROR]     'groupId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[un
known-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.
0.pom, line 2, column 27
[ERROR]     'artifactId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:
[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2
.7.0.pom, line 2, column 27
[ERROR]     'version' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[un
known-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.
0.pom, line 2, column 27
[ERROR]     'dependencies.dependency.version' for com.google.gwt:gwt-servlet:jar
 is missing. @ line 37, column 15
[ERROR]     'dependencies.dependency.version' for com.google.gwt:gwt-user:jar is
 missing. @ line 42, column 15
[ERROR]     'dependencies.dependency.version' for com.google.gwt:gwt-dev:jar is
missing. @ line 47, column 15
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildin
gException

( http://pastebin.com/vJPPdqDQ )

(Stackoverflow 似乎只将它格式化为几行,我总是不得不再次添加四个空格,我猜我使用的功能是错误的)

这似乎是文件结构的错误。 您的完整 POM 粘贴错误,所以我无法真正检查它,也许您没有正确打开和关闭标签?

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="..." (...)>
...
</project>

编辑:POM 现在已正确粘贴,实际上您最后没有项目结束标记。

根据构建输出中的错误:

...
[ERROR] Some problems were encountered while processing the POMs:
[ERROR] 'modelVersion' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.pom, line 2, column 27
[ERROR] 'groupId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.pom, line 2, column 27
[ERROR] 'artifactId' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.pom, line 2, column 27
[ERROR] 'version' is missing. @ [unknown-group-id]:[unknown-artifact-id]:[unknown-version], C:\Users\user\.m2\repository\com\google\gwt\gwt\2.7.0\gwt-2.7.0.pom, line 2, column 27
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-servlet:jar ismissing. @ line 37, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-user:jar is missing. @ line 42, column 15
[ERROR] 'dependencies.dependency.version' for com.google.gwt:gwt-dev:jar is missing. @ line 47, column 15
...

您的C:\\Users\\user\\.m2\\repository\\com\\google\\gwt\\gwt\\2.7.0\\目录中可能存在损坏的内容(有时会发生这种情况,例如,如果在下载依赖项期间 Internet 连接中断或之后几乎不可能追查到的其他一些原因)。 删除错误消息中提到的目录| ies 并再次尝试构建。 如果仍有错误,请重复。

(您也可以删除C:\\Users\\user\\.m2\\repository\\下的所有内容,但是下一次构建需要更长的时间,因为所有 Maven 插件及其依赖项及其传递依赖项以及您项目的依赖项及其传递依赖项都必须是从头开始重新下载。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM