我正在制作
mvn install
我收到错误:
[错误]无法执行目标 org.alfresco.maven.plugin:露天-Maven的插件:2.1.0:集版本 项目componentX-share上的(default-set-version):执行 default-set-version of goal org.alfresco.maven.plugin:露天-Maven的插件:2.1.0:集版本 失败:无法在插件中加载mojo'set-version' 由于API,'org.alfresco.maven.plugin:alfresco-maven-plugin:2.1.0' 配伍禁忌: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org / alfresco / maven / plugin / VersionMojo:不支持的major.minor 版本52.0
但是我已经看过java的版本是否相同,而且它是正确的。
喜欢:
哪个javac - > /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/javac
哪个java - > /usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/java
javac - > -version javac 1.7.0_79
java - > -version java version“1.7.0_79”OpenJDK Runtime Environment (IcedTea 2.5.6)(7u79-2.5.6-0ubuntu1.14.04.1)OpenJDK 64位服务器VM (建立24.79-b02,混合模式)
和
mvn -v - > Apache Maven 3.3.3(7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T12:57:37 + 01:00) Maven home:/home/patricia/Transferências/apache-maven-3.3.3 Java版本:1.7.0_79,供应商:Oracle Corporation Java home:/ usr / lib / jvm / java-7-openjdk-amd64 / jre 默认语言环境:pt_PT,平台编码:UTF-8 操作系统名称:“linux”,版本:“3.19.0-25-generic”,arch:“amd64”,family:“unix”
我认为这一切都是正确的。我的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.acme</groupId>
<artifactId>componentX-share</artifactId>
<version>1.0-SNAPSHOT</version>
<name>componentX-share AMP project</name>
<packaging>amp</packaging>
<description>Manages the lifecycle of the componentX-share AMP (Alfresco Module Package)</description>
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-parent</artifactId>
<version>2.1.0</version>
</parent>
<!--
SDK properties have sensible defaults in the SDK parent,
but you can override the properties below to use another version.
For more available properties see the alfresco-sdk-parent POM.
-->
<properties>
<!-- The following are default values for data location and Alfresco version.
Uncomment if you need to change
<alfresco.version>${alfresco.community.default.version}</alfresco.version> -->
<!-- This control the root logging level for all apps uncomment and change, defaults to WARN
<app.log.root.level>WARN</app.log.root.level>
-->
<!-- Set the enviroment to use, this controls which properties will be picked in src/test/properties
for embedded run, defaults to the 'local' environment. See SDK Parent POM for more info.
<env>other environment name</env>
-->
<!-- The Maven artifact ID to use when loading the Share.WAR that the AMP should be applied to,
defaults to the alfresco.war artifact ID, so we need to override here. -->
<app.amp.client.war.artifactId>${alfresco.share.artifactId}</app.amp.client.war.artifactId>
<!-- Since Alfresco.WAR (i.e. the Repository) is already running on port 8080, we run Share.WAR on port 8081 -->
<maven.tomcat.port>8081</maven.tomcat.port>
<!-- Used in share-config-custom.xml. By default points to local installation of Alfresco Repo -->
<alfresco.repo.url>http://localhost:8080/alfresco</alfresco.repo.url>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.source>1.7</maven.compiler.source>
</properties>
<!-- Here we realize the connection with the Alfresco selected platform
(e.g.version and edition) -->
<dependencyManagement>
<dependencies>
<!-- This will import the dependencyManagement for all artifacts in the selected Alfresco version/edition
(see http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Importing_Dependencies)
NOTE: You still need to define dependencies in your POM, but you can omit version as it's enforced by this dependencyManagement. NOTE: It defaults
to the latest version this SDK pom has been tested with, but alfresco version can/should be overridden in your project's pom -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-platform-distribution</artifactId>
<version>${alfresco.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<!-- Following dependencies are needed for compiling Java code in src/main/java; -->
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share</artifactId>
<version>${alfresco.version}</version>
<classifier>classes</classifier>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.extensions.surf</groupId>
<artifactId>spring-surf-api</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Compress JavaScript files and store as *-min.js -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<profiles>
<!--
Brings in the extra Enterprise specific share classes,
if the 'enterprise' profile has been activated, needs to be activated manually. -->
<profile>
<id>enterprise</id>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-enterprise</artifactId>
<version>${alfresco.version}</version>
<classifier>classes</classifier>
<scope>provided</scope>
</dependency>
</dependencies>
</profile>
</profiles>
</project>
我已经尝试将行添加到pom.xml中,如:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
我在“stackoverflow”的其他解决方案中看到过,但我无法解决问题。我不想升级Java的版本(如果它是解决方案)我想在Java 7中运行。任何想法?
如果解决方案仅针对Java 8进行升级,那么请告诉我。
感谢。
答案 0 :(得分:10)
您的问题是Maven Alfresco Plugin 2.1.0
需要JDK 1.8,如异常(版本52.0)所示。
您可以在此处查看插件的要求:Maven Alfresco PLugin Requirements
因此,您的选项是降级alfresco插件版本或升级到JDK 1.8。
答案 1 :(得分:2)
不受支持的major.minor版本52.0
您需要Java SE 8或更高版本。
答案 2 :(得分:0)
在您的项目设置中更改maven ----&gt; Project Facedes ---&gt; Java 1.8到1.7 .. 并检查在JRE或JDK上运行的构建路径... 如果JRE更改为JDK ... JavaPath in STS