Java Maven和Jetty在windows机器上工作,而不是在Linux上

Java Maven和Jetty在windows机器上工作,而不是在Linux上,java,linux,eclipse,maven,Java,Linux,Eclipse,Maven,我开发的方式是:使用EclipseMars在我的windows机器上编写代码,并使用git将repo复制到实际的web服务器上。当我进入mvn jetty:在我的windows上运行时,它工作正常,jetty启动。当我进入sudomvnjetty:runonlinux时,我得到了plugincontainereexception。我试着在Apache的支持页面上查找,但是我没有找到任何地方。这是我的pom文件 <project xmlns="http://maven.apache.org/

我开发的方式是:使用EclipseMars在我的windows机器上编写代码,并使用git将repo复制到实际的web服务器上。当我进入mvn jetty:在我的windows上运行时,它工作正常,jetty启动。当我进入sudomvnjetty:runonlinux时,我得到了plugincontainereexception。我试着在Apache的支持页面上查找,但是我没有找到任何地方。这是我的pom文件

<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>myGroupId</groupId>
  <artifactId>myArtifactId</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>my name</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <repositories>
       <repository>
           <id>repo2_maven_org</id>
           <url>http://repo2.maven.org/maven2</url>
       </repository>
   </repositories>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>9.3.0.v20150612</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlet</artifactId>
        <version>9.3.0.v20150612</version></dependency>
    <dependency>
        <groupId>org.eclipse.jetty.websocket</groupId>
        <artifactId>javax-websocket-server-impl</artifactId>
        <version>9.3.0.v20150612</version></dependency>
  </dependencies>
  <build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.3.0.v20150612</version></plugin></plugins></build>
</project>
修复初始错误后,我收到此错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project angular-gantt-websocket: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
关键是这个

[ERROR] Failed to execute goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612:run (default-cli) on project angular-gantt-websocket: Execution default-cli of goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612:run failed: Unable to load the mojo 'run' in the plugin 'org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612' due to an API incompatibility: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/eclipse/jetty/maven/plugin/JettyRunMojo : Unsupported major.minor version 52.0

它说类文件是根据不同版本的Java编译的。检查您的Java运行时或JDK版本。

您能包括您看到的完整异常吗?请执行以下命令:javac-version和sudo javac-versionI我太愚蠢了,我不小心安装了jre而不是JDK。我做了这件事,那件事修复了错误,但现在我得到了一个MojoFailureException,说没有编译器。也就是说,当我输入mvn-version时,它说我已经让JDK1.8.xx运行javac-version并查看安装了什么编译器。验证JAVA_HOME指向JDK安装,而不是JRE。还可以使用“whichjava”和“whichjavac”来查找和更正路径变量。
[ERROR] Failed to execute goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612:run (default-cli) on project angular-gantt-websocket: Execution default-cli of goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612:run failed: Unable to load the mojo 'run' in the plugin 'org.eclipse.jetty:jetty-maven-plugin:9.3.0.v20150612' due to an API incompatibility: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/eclipse/jetty/maven/plugin/JettyRunMojo : Unsupported major.minor version 52.0