无法在 Eclipse 中创建 Maven 项目 [英] Cannot create Maven Project in eclipse

查看:33
本文介绍了无法在 Eclipse 中创建 Maven 项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在公司防火墙后面的 Windows 7 机器上安装了 Eclipse Luna 和 Maven 3.2.3.

尝试从原型创建项目会导致以下错误:

<块引用>

无法从任何已配置的存储库中解析原型 org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE.

无法解析工件 org.apache.maven.archetypes:maven-archetype-quickstart:pom:RELEASE

无法解析 org.apache.maven.archetypes 的版本:maven-archetype-quickstart:pom:RELEASE: 找不到元数据 org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml 在本地 (C:Usersxxxx.m2 epository)

无法解析 org.apache.maven.archetypes 的版本:maven-archetype-quickstart:pom:RELEASE:Could not find metadata org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml in本地 (C:Usersxxxx.m2 epository)

代理详细信息在 .m2/settings.xml 中配置,并且从 archtype 生成 maven 项目在命令行中工作正常.

我尝试应用 此处 但没有任何效果.远程目录也无法访问.估计是Eclipse的网络设置有问题.我还查看了 this bug report 试图找到一些线索,但无法不太了解如何实施解决方法.

这是我的 settings.xml 文件:

<服务器><服务器><id>nexus</id><用户名>xxxx@xxxx.com</用户名><密码>{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}</密码></服务器><服务器><id>部署</id><用户名>xxxx@xxxx.com</用户名><密码>{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}</密码></服务器></服务器><镜子><镜子><!--这会将其他所有内容发送到/public --><id>nexus</id><mirrorOf>*</mirrorOf><url>https://nexus-int.xxxx.xxxx.com/nexus/content/groups/public</url></镜像></镜子><个人资料><个人资料><id>nexus</id><!--启用内置中央存储库的快照以直接--><!--所有通过镜像对nexus的请求--><存储库><存储库><id>中央</id><url>http://central</url><releases><enabled>true</enabled></releases><快照><启用>真</启用></快照></repository></repositories><pluginRepositories><插件库><id>中央</id><url>http://central</url><releases><enabled>true</enabled></releases><快照><启用>真</启用></快照></pluginRepository></pluginRepositories></个人资料></个人资料><活动配置文件><!--使配置文件始终处于活动状态--><activeProfile>nexus</activeProfile></activeProfiles></设置>

有什么想法吗?

谢谢

托玛

解决方案

同样的问题,已解决.

我会解释问题和解决方案,以帮助他人.

我的软件是:

Windows 7Eclipse 4.4.1 (Luna SR1)m2e 1.5.0.20140606-0033(来自 eclipse 存储库:http://download.eclipse.org/releases/luna)

我通过代理访问互联网.

我的问题是一样的:

  • 刚刚安装了 m2e,进入菜单:文件 > 新建 > 其他 > Maven > Maven 项目 > 下一步 > 下一步.
  • 选择目录:所有目录"和过滤器:maven-archetype-quickstart",然后点击搜索结果,然后点击下一步"按钮.
  • 然后输入组 ID:test_gr"和工件 ID:test_art",然后单击完成"按钮.
  • 收到无法解析原型..."错误.

经过多次尝试和错误,并阅读了很多页面,我终于找到了解决方案.解决方案的一些要点:

  • 它使用 m2e 附带的默认(嵌入式)Maven 安装 (3.2.1/1.5.0.20140605-2032).
  • 因此不需要额外的(外部)Maven 安装.
  • 不需要特殊的 m2e 配置.

解决方案是:

  • 打开日食.
  • 恢复 m2e 原始首选项(如果您更改了其中任何一个):单击菜单:窗口 > 首选项 > Maven > 恢复默认值.对Maven"项下的所有树项执行相同操作:原型、发现、错误/警告、安装、生命周期映射、模板、用户界面、用户设置.点击确定"按钮.
  • 复制(例如到记事本窗口)用户设置文件的路径.要查看路径,请再次单击菜单:Window > Preferences > Maven > User Settings,路径位于用户设置"文本框中.您必须手动编写路径,因为无法复制和粘贴.处理记事本的路径后,不要关闭首选项"窗口.
  • 在已打开的首选项窗口中,单击打开文件"链接.关闭 Preferences 窗口,您将看到已在 Eclipse 编辑器中打开的settings.xml"文件.
  • 编辑器底部将有 2 个选项卡:设计"和来源".单击源"选项卡.您将看到所有源代码 (xml).
  • 删除所有源代码:点击代码,按control+a,按del".
  • 将以下代码复制到编辑器(并自定义大写值):
<块引用>

<代理><代理><active>true</active><protocol>http</protocol><host>YOUR.PROXY.IP.OR.NAME</host><端口>您的代理端口</端口><username>您的代理用户名(如果不需要,则为空)</username><password>您的代理密码(如果不需要,则为空)</password><nonProxyHosts>您的代理排除主机列表(或空)</nonProxyHosts></代理></代理></设置>

  • 保存文件:control+s.
  • 退出 Eclipse:菜单文件 > 退出.
  • 在 Windows 资源管理器中打开您复制的路径(没有文件名,只有目录路径).
  • 您可能会看到 xml 文件(settings.xml")和一个目录(repository").删除目录(存储库"):右键单击 > 删除 > 是.
  • 启动 Eclipse.
  • 现在您将能够创建一个 Maven 项目:文件 > 新建 > 其他 > Maven > Maven 项目 > 下一步 > 接下来,选择目录:所有目录"和过滤器:maven-archetype-quickstart",点击搜索结果,然后点击按钮 Next,输入Group Id: test_gr"和Artifact Id: test_art",点击 Finish 按钮.

最后,我想给 m2e 开发者一个建议,让配置更容易.从互联网(从存储库)安装 m2e 后,m2e 应该检查 Eclipse 是否正在使用代理(首选项 > 常规 > 网络连接).如果 Eclipse 使用代理,则 m2e 应向用户显示一个对话框:

m2e 检测到 Eclipse 正在使用代理访问 Internet.你想让我为嵌入式创建一个用户设置文件 (settings.xml)马云软件?[ 是 ] [ 否 ]

如果用户单击是,则 m2e 应通过从 Eclipse 首选项复制代理值来自动创建settings.xml"文件.

I have Eclipse Luna and Maven 3.2.3 installed on a Windows 7 machine behind a corporate firewall.

Trying to create a project from an archetype results in the following error:

Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE from any of the configured repositories.

Could not resolve artifact org.apache.maven.archetypes:maven-archetype-quickstart:pom:RELEASE

Failed to resolve version for org.apache.maven.archetypes:maven-archetype- quickstart:pom:RELEASE: Could not find metadata org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml in local (C:Usersxxxx.m2 epository)

Failed to resolve version for org.apache.maven.archetypes:maven-archetype-quickstart:pom:RELEASE: Could not find metadata org.apache.maven.archetypes:maven-archetype-quickstart/maven-metadata.xml in local (C:Usersxxxx.m2 epository)

Proxy details are configured in .m2/settings.xml and generating a maven project from an archtype works fine in command line.

I tried to apply the solutions from here but none worked. The remote catalog is not acessible as well. I reckon it's a problem with the network settings of Eclipse. I also looked at this bug report to try and find some clues and couldn't really understand how to implement the workaround.

here is my settings.xml file:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <servers>
        <server>
            <id>nexus</id>
            <username>xxxx@xxxx.com</username>
            <password>{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}</password>
        </server>
        <server>
            <id>deployment</id>
            <username>xxxx@xxxx.com</username>
            <password>{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}</password>
        </server>
    </servers>
    <mirrors>
        <mirror>
        <!--This sends everything else to /public -->
        <id>nexus</id>
        <mirrorOf>*</mirrorOf>
        <url>https://nexus-int.xxxx.xxxx.com/nexus/content/groups/public</url>
        </mirror>
    </mirrors>
    <profiles>
        <profile>
        <id>nexus</id>
            <!--Enable snapshots for the built in central repo to direct -->
        <!--all requests to nexus via the mirror -->
        <repositories>
            <repository>
                <id>central</id>
                <url>http://central</url>
                <releases><enabled>true</enabled></releases>
                <snapshots><enabled>true</enabled></snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>central</id>
                <url>http://central</url>
                <releases><enabled>true</enabled></releases>
                <snapshots><enabled>true</enabled></snapshots>
            </pluginRepository>
        </pluginRepositories>
        </profile>
    </profiles>
    <activeProfiles>
        <!--make the profile active all the time -->
        <activeProfile>nexus</activeProfile>
    </activeProfiles>
</settings>

Any ideas?

Thanks

Tomer

解决方案

Same problem here, solved.

I will explain the problem and the solution, to help others.

My software is:

Windows 7
Eclipse 4.4.1 (Luna SR1)
m2e 1.5.0.20140606-0033
    (from eclipse repository: http://download.eclipse.org/releases/luna)

And I'm accessing internet through a proxy.

My problem was the same:

  • Just installed m2e, went to menu: File > New > Other > Maven > Maven project > Next > Next.
  • Selected "Catalog: All catalogs" and "Filter: maven-archetype-quickstart", then clicked on the search result, then on button Next.
  • Then entered "Group Id: test_gr" and "Artifact Id: test_art", then clicked on Finish button.
  • Got the "Could not resolve archetype..." error.

After a lot of try-and-error, and reading a lot of pages, I've finally found a solution to fix it. Some important points of the solution:

  • It uses the default (embedded) Maven installation (3.2.1/1.5.0.20140605-2032) that comes with m2e.
  • So no aditional (external) Maven installation is required.
  • No special m2e config is required.

The solution is:

  • Open eclipse.
  • Restore m2e original preferences (if you changed any of them): Click on menu: Window > Preferences > Maven > Restore defaults. Do the same for all tree items under "Maven" item: Archetypes, Discovery, Errors/Warnings, Instalation, Lifecycle Mappings, Templates, User Interface, User Settings. Click on "OK" button.
  • Copy (for example to a notepad window) the path of the user settings file. To see the path, click again on menu: Window > Preferences > Maven > User Settings, and the path is at the "User settings" textbox. You will have to write the path manually, since it is not posible to copy-and-paste. After coping the path to the notepad, don't close the Preferences window.
  • At the Preferences window that is already open, click on the "open file" link. Close the Preferences window, and you will see the "settings.xml" file already openned in a Eclipse editor.
  • The editor will have 2 tabs at the bottom: "Design" and "Source". Click on "Source" tab. You will see all the source code (xml).
  • Delete all the source code: Click on the code, press control+a, press "del".
  • Copy the following code to the editor (and customize the uppercased values):

<settings>
  <proxies>
   <proxy>
      <active>true</active>
      <protocol>http</protocol>
      <host>YOUR.PROXY.IP.OR.NAME</host>
      <port>YOUR PROXY PORT</port>
      <username>YOUR PROXY USERNAME (OR EMPTY IF NOT REQUIRED)</username>
      <password>YOUR PROXY PASSWORD (OR EMPTY IF NOT REQUIRED)</password>
      <nonProxyHosts>YOUR PROXY EXCLUSION HOST LIST (OR EMPTY)</nonProxyHosts>
    </proxy>
  </proxies>
</settings>

  • Save the file: control+s.
  • Exit Eclipse: Menu File > Exit.
  • Open in a Windows Explorer the path you copied (without the filename, just the path of directories).
  • You will probaly see the xml file ("settings.xml") and a directoy ("repository"). Remove the directoy ("repository"): Right click > Delete > Yes.
  • Start Eclipse.
  • Now you will be able to create a maven project: File > New > Other > Maven > Maven project > Next > Next, select "Catalog: All catalogs" and "Filter: maven-archetype-quickstart", click on the search result, then on button Next, enter "Group Id: test_gr" and "Artifact Id: test_art", click on Finish button.

Finally, I would like to give a suggestion to m2e developers, to make config easier. After installing m2e from the internet (from a repository), m2e should check if Eclipse is using a proxy (Preferences > General > Network Connections). If Eclipse is using a proxy, the m2e should show a dialog to the user:

m2e has detected that Eclipse is using a proxy to access to the internet.
Would you like me to create a User settings file (settings.xml) for the embedded 
Maven software?

[ Yes ] [ No ]

If the user clicks on Yes, then m2e should create automatically the "settings.xml" file by copying proxy values from Eclipse preferences.

这篇关于无法在 Eclipse 中创建 Maven 项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆