如何解决这个问题没有为maven上的这个版本指定目标?

时间:2017-05-06 02:17:19

标签: java maven

我正在尝试构建这个maven项目:

  1. https://github.com/jottinger/owlapi-tutorial
  2. 在这个专家中:

    <?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/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>com.autumncode</groupId>
        <artifactId>owlapi-tutorial</artifactId>
        <version>1.0-SNAPSHOT</version>
    
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>net.sourceforge.owlapi</groupId>
                    <artifactId>owlapi-distribution</artifactId>
                    <version>[4.0.2,)</version>
                </dependency>
                <dependency>
                    <groupId>net.sourceforge.owlapi</groupId>
                    <artifactId>owlapi-rio</artifactId>
                    <version>[4.0.2,)</version>
                </dependency>
                <dependency>
                    <groupId>net.sourceforge.owlapi</groupId>
                    <artifactId>jfact</artifactId>
                    <version>4.0.2</version>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-simple</artifactId>
                    <version>1.7.7</version>
                </dependency>
                <dependency>
                    <groupId>org.testng</groupId>
                    <artifactId>testng</artifactId>
                    <version>[6.9.8,)</version>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>
    
        <dependencies>
            <dependency>
                <groupId>net.sourceforge.owlapi</groupId>
                <artifactId>owlapi-distribution</artifactId>
            </dependency>
            <dependency>
                <groupId>net.sourceforge.owlapi</groupId>
                <artifactId>owlapi-rio</artifactId>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-simple</artifactId>
            </dependency>
            <dependency>
                <groupId>org.testng</groupId>
                <artifactId>testng</artifactId>
            </dependency>
            <dependency>
                <groupId>net.sourceforge.owlapi</groupId>
                <artifactId>jfact</artifactId>
            </dependency>
        </dependencies>
    
        <build>
            <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>
            </plugins>
        </build>
    </project>
    

    我发现了一些关于它的问题:

    1. No goals have been specified for this build.
    2. maven - j2objc - No goals have been specified for this build
    3. No goals have been specified for this build
    4. Maven how to find out what settings.xml is used (Ubuntu)
    5. How to fix this Build Path Error?
    6. How to fix this maven warning on Eclipse: "There is no schema defined for this pom.xml"
    7. 他们说我需要设定一个目标:

        <goals>
          <goal>exploded</goal>
        </goals>
      

      但我不知道如何把它放在上面的配置文件中。这是运行初始pom.xml时的完整日志输出:

      mvn -e -X
      Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T16:39:06-03:00)
      Maven home: D:\User\Documents\apache_marven\maven
      Java version: 1.8.0_131, vendor: Oracle Corporation
      Java home: C:\Program Files\Java\jdk1.8.0_65\jre
      Default locale: en_US, platform encoding: Cp1252
      OS name: "windows 10", version: "10.0", arch: "x86", family: "windows"
      [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.core
      [DEBUG]   Imported: org.codehaus.plexus.util.xml.pull.XmlPullParserException < plexus.core
      [DEBUG]   Imported: org.codehaus.plexus.util.xml.pull.XmlSerializer < plexus.core
      [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.fusesource.jansi.* < plexus.core
      [DEBUG]   Imported: org.slf4j.* < plexus.core
      [DEBUG]   Imported: org.slf4j.helpers.* < plexus.core
      [DEBUG]   Imported: org.slf4j.spi.* < plexus.core
      [DEBUG] Populating class realm maven.api
      [INFO] Error stacktraces are turned on.
      [DEBUG] Message scheme: color
      [DEBUG] Message styles: debug info warning error success failure strong mojo project
      [DEBUG] Reading global settings from D:\User\Documents\apache_marven\maven\conf\settings.xml
      [DEBUG] Reading user settings from C:\Users\Professional\.m2\settings.xml
      [DEBUG] Reading global toolchains from D:\User\Documents\apache_marven\maven\conf\toolchains.xml
      [DEBUG] Reading user toolchains from C:\Users\Professional\.m2\toolchains.xml
      [DEBUG] Using local repository at C:\Users\Professional\.m2\repository
      [DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for C:\Users\Professional\.m2\repository
      [INFO] Scanning for projects...
      [DEBUG] Extension realms for project com.mycompany.app:my-app:jar:1.0-SNAPSHOT: (none)
      [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null]
      [INFO] ------------------------------------------------------------------------
      [INFO] BUILD FAILURE
      [INFO] ------------------------------------------------------------------------
      [INFO] Total time: 0.445 s
      [INFO] Finished at: 2017-05-05T23:05:24-03:00
      [INFO] Final Memory: 4M/15M
      [INFO] ------------------------------------------------------------------------
      [ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
      org.apache.maven.lifecycle.NoGoalSpecifiedException: No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy.
              at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:94)
              at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
              at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
              at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
              at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
              at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
              at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:498)
              at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
              at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
              at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
              at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
      [ERROR]
      [ERROR]
      [ERROR] For more information about the errors and possible solutions, please read the following articles:
      [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/NoGoalSpecifiedException
      

      我不想从eclipse运行它。我宁愿只是按照命令行调用mvn,就像我现在所做的那样。

6 个答案:

答案 0 :(得分:5)

目标可以在pom.xml的build-plugins-plugin部分中指定,具体取决于您希望应用程序发生什么。

E.g。如果您想执行它,可以按照问题How do I execute a program using Maven?上描述的步骤进行操作。

我认为你不能只用mvn来做,但你需要指明会发生什么(例如mvn packagemvn install

您可以在Introduction to the Build Lifecycle上详细了解目标和阶段。

答案 1 :(得分:5)

运行/调试配置命令行字段中输入所需的生命周期事件。 对我来说,我想运行这个项目,所以我使用了 spring-boot:run

它对我有用

Maven life cycle references

enter image description here

答案 2 :(得分:1)

在cmd中运行以下命令: mvn clean

答案 3 :(得分:0)

要举一个清晰的例子,您可以使用 mvn package exec:java

exec-maven-plugin 运行您的应用程序
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.2.1</version>
    <executions>
        <execution>
            <goals>
                <goal>java</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <mainClass>com.path.to.MainFile</mainClass>
    </configuration>
</plugin>
  1. com.path.to.MainFile 文件将位于 /src/main/java/com/path/to/MainFile.java

答案 4 :(得分:0)

如果您正在使用Jenkins + maven,请转到job-> build->并添加目标和选项:

clean install -Denvironment="$"environment

enter image description here

答案 5 :(得分:-1)

对我来说,以下解决方案有效。 转到终端并运行“ mvn clean install”