标签: m2e

在Indigo中新的M2Eclipse不再需要maven-eclipse-plugin了吗?

从历史上看,考虑到Flex,WTP和GWT的所有内容,我们的团队将我们的多模块Maven项目导入Eclipse是一个很大的麻烦.我们最近认为maven-eclipse-plugin可以通过生成适当的Eclipse项目文件来帮助我们.

然而,现在似乎M2Eclipse插件已被Eclipse吞噬,现在导入Maven项目似乎正在读取pom并尝试做正确的事情.

这是否意味着maven-eclipse-plugin基本上已经过时了?我们可以做些什么来帮助我们的项目以最佳方式导入Eclipse?

eclipse m2eclipse maven maven-eclipse-plugin m2e

10
推荐指数
1
解决办法
7173
查看次数

"org.eclipse.m2e.jdt.JarLifecycleMapping"不可用

如何使用Eclipse处理这个m2e插件问题:

描述资源路径位置类型生命周期映射"org.eclipse.m2e.jdt.JarLifecycleMapping"不可用.要启用完整功能,请安装生命周期映射并运行Maven->更新项目配置.pom.xml/vosao-web line 11 Maven项目构建生命周期映射问题

有人解决了这个问题吗?或者这个插件在Eclipse中根本不受支持?

eclipse m2eclipse maven m2e

10
推荐指数
2
解决办法
1万
查看次数

Maven发现完成但未找到任何扩展名

我在我的系统上安装了eclipse 4.3,最近安装了Maven集成插件.我收到以下错误:

发现完成后未发现任何扩展.请检查您的网络连接,然后重试.

目录网址是 http://download.eclipse.org/technology/m2e/discovery/directory-1.4.xml

注意:没有代理,没有网络问题

eclipse maven-plugin maven-3 maven m2e

10
推荐指数
1
解决办法
3118
查看次数

m2e使用基于证书的ssl身份验证

TL; DR

如何使Eclipse的内置Maven连接到使用基于证书的身份验证的HTTPS存储库?

似乎m2e能够找到密钥库,但无法连接.命令行Maven就像使用完全相同的密钥库的魅力一样.Run as -> Maven build适用于外部Maven,而不适用于嵌入式Maven.

问题

我有一个依赖的Maven项目.除了常规用户名 - 密码组合之外,该依赖关系在使用基于SSL证书的身份验证的存储库中可用.我需要在Eclipse Luna中使用内置的Maven.我能得到的只是handshake_failure.对日志的调查表明,内置Maven无法找到匹配的证书.

当我使用Run as -> Maven build外部Maven或命令行Maven时,它成功连接到存储库并完全根据需要获取工件.

有趣的是,外置和嵌入式Mavens都有相同的版本(3.2.3).

建立

我将这些参数传递给eclipse.ini:

-Djavax.net.ssl.trustStore=java.cacerts
-Djavax.net.ssl.trustStorePassword=******
-Djavax.net.ssl.keyStore=private.cacerts
-Djavax.net.ssl.keyStorePassword=******
-Djavax.net.debug=ssl,handshake
Run Code Online (Sandbox Code Playgroud)

trustStore文件包含:

  • 我连接到的存储库的整个证书链(链以自签名证书结束),其中一个存储在别名下repository.location.url(文本存储库位置,例如myrepository.com)
  • maven central证书

keyStore文件包含存储库别名下的导入PKCS证书.

设置似乎没有问题,因为命令行Maven工作.如果我使用外部Maven或命令行,它可以工作.如果我开始嵌入一个(它总是用于解析依赖关系),则handshake error显示出来.

我究竟做错了什么?我可能会遗漏一些完全明显的东西.任何帮助,将不胜感激.

java eclipse ssl-certificate maven m2e

10
推荐指数
2
解决办法
1万
查看次数

如何映射Eclipse m2e插件未涵盖的Maven生命周期阶段?

我在Mac 10.9.5上使用Eclipse Kepler.我使用m2e Eclipse插件导入了许多Maven项目.所有这些项目都是父母的孩子.当我查看各个子pom.xml文件中的"Overview"时,我看到如下内容:

Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:properties-maven-plugin:1.0-alpha-2:write-project-properties (execution: default, phase: process-resources)
Run Code Online (Sandbox Code Playgroud)

我希望Eclipse在适当的时候执行这些生命周期阶段,但我不知道如何做到这一点.当我选择Eclipse的建议时......

Permanently mark goal write-project-properties in pom.xml as ignore
Run Code Online (Sandbox Code Playgroud)

我在提示"选择要放置忽略的位置"时选择了父pom.xml文件,但是,当我在Eclipse编辑器中查看子pom.xml文件时,错误不会消失.如何映射m2e未涵盖的生命周期阶段?

编辑:

根据答案,我去了Eclipse - > Preferences - > Maven - > Lifecycle Mappings,点击了"Open Workspace Lifecycle Mappings Metadata",并根据建议编辑了文件......

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
    <pluginExecutions>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>xmlbeans-maven-plugin</artifactId>
                <versionRange>2.3.3</versionRange>
                <goals>
                    <goal>xmlbeans</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>properties-maven-plugin</artifactId>
                <versionRange>[1.0-alpha-2,)</versionRange>
                <goals>
                    <goal>write-project-properties</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <execute />
            </action>
        </pluginExecution>
    </pluginExecutions>
</lifecycleMappingMetadata>
Run Code Online (Sandbox Code Playgroud)

即使在重新启动Eclipse之后,当我打开子pom.xml文件时,"生命周期配置未涵盖的插件执行"错误仍然像以前一样.

eclipse lifecycle m2eclipse maven m2e

10
推荐指数
1
解决办法
2万
查看次数

Maven突然想要src /而不是src/main/java

我正在使用Maven 3.3.3和Eclipse Mars以及m2e.昨天,我创建了一个新的Java项目并将其转换为Maven项目.

之后,类路径只包含src而不是标准src/main/java.我很惊讶,但我只是创建了丢失的文件夹并运行了m2e的"更新项目".这并没有解决问题; m2e仍坚持只使用src.

所以我手动编辑了类路径,最后得到了通常的结果

src/test/java
src/test/resources
src/main/java
src/main/resources
Run Code Online (Sandbox Code Playgroud)

当我现在尝试m2e的"更新项目"时,我收到此错误:

Cannot nest 'foo/src/test/java' inside 'foo/src'. To enable the nesting, exclude 'test/' from 'foo/src'
Run Code Online (Sandbox Code Playgroud)

叹了口气,然后我去了命令行并跑去mvn eclipse:eclipse获取这个类路径:

src/test/java
src/test/resources
src
src/main/resources
Run Code Online (Sandbox Code Playgroud)

现在,我完全难过了.为什么会这样?

eclipse maven m2e

10
推荐指数
1
解决办法
2万
查看次数

Eclipse通过更新pom来修复项目设置?

在eclipse项目中,我引用了一个当前不在项目构建路径中的类.

在通过将鼠标悬停在错误上打开的上下文敏感弹出窗口中,"修复项目设置"选项使我可以将jar添加到项目的构建路径中.这个jar在我当地的maven存储库中.

但是,修复它的"正确"方法显然是将相关的依赖项添加到项目的pom中,而不是将此jar添加到项目的构建路径中.

那么有没有办法配置eclipse,因此它不会提供将maven repo jar添加到构建路径,但它会提供修复项目的pom?

java eclipse maven m2e

10
推荐指数
2
解决办法
2141
查看次数

如何在本地服务器上运行eclipse m2e webapp项目?

我正在尝试使用m2e创建一个简单的webapp作为maven项目来帮助我管理依赖项,但我必须遗漏一些东西,因为我无法从eclipse运行该项目.

为了更多的背景,这是我做的:

首先,我选择创建一个"Maven项目"

在此输入图像描述

然后,我选择"maven-webapp-archetype"

在此输入图像描述

最后,我填写下一步的基本项目信息表并完成项目创建.在这一点上,一切看起来都很好.

问题是当我尝试运行项目时,我找不到任何适合在本地服务器上运行项目的东西:

在此输入图像描述

此外,从本地服务器的"添加和删除..."上下文菜单项,我的项目不会出现在Web项目列表中.

我是否错过了设置中的一个步骤,还是有其他更合适的方式来启动项目?

eclipse eclipse-wtp maven maven-war-plugin m2e

9
推荐指数
1
解决办法
6261
查看次数

构建Eclipse后,Maven包结构发生了变化

我在Eclipse中创建了一个Maven项目.最初我的包结构就像

-src/main/java
---com.package1
---com.package2
-src/main/resources
Run Code Online (Sandbox Code Playgroud)

当我成功构建项目并在tomcat中部署战争时,我的项目结构变为

-src.main.java.com.package1
-src.main.java.com.package2
-src.main.resources
Run Code Online (Sandbox Code Playgroud)

这会在包导入声明中的Java类文件中生成错误.我想恢复原来的项目结构.我在Eclipse中安装了m2eclipse插件.

我也尝试了Maven> Update Project ..(我在Stack Overflow上的某处读到它将恢复原始结构)但它产生了以下错误

Failed while installing JAX-RS (REST Web Services) 1.1.
org.osgi.service.prefs.BackingStoreException: Resource /Workspace/ProjectName/.settings'      does not exist.
Run Code Online (Sandbox Code Playgroud)

请帮助我如何恢复我的项目结构.

java eclipse tomcat maven m2e

9
推荐指数
1
解决办法
2320
查看次数

对于多个Java版本,避免在Eclipse中"没有在严格兼容的工作空间中安装JRE"警告

我知道关于这个警告已经有很多问题,但我的问题有点不同.我知道我可以使用此配置pom.xml来修复它

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

这消除了警告,但前提是我在Eclipse中安装并配置了Java 7.例如,如果我只有Java 8,我仍然会看到警告,除非我将上面配置中的版本更改为1.8:

构建路径指定执行环境JavaSE-1.7.工作区中没有安装与此环境严格兼容的JRE.

我的项目与Java 7,8,9和10兼容.我想要实现的是,如果安装了任何这些版本的Java而没有更改我的版本pom.xml以匹配当前安装的Java版本,则要避免此警告.告诉Eclipse Java 7或其他任何东西都是好的.

该项目仍然可以通过警告进行编译和工作,它只是让人分心,因为它标记了项目有问题.我知道我可以在Eclipse设置中隐藏这种类型的警告,但有没有办法通过仅使用一些配置来摆脱它pom.xml

java eclipse m2eclipse maven m2e

9
推荐指数
1
解决办法
2020
查看次数