Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven不支持Maven依赖插件_Java_Spring_Maven - Fatal编程技术网

Java Maven不支持Maven依赖插件

Java Maven不支持Maven依赖插件,java,spring,maven,Java,Spring,Maven,我试图从一本书中下载一个Spring/Java代码来运行他们的代码并进行测试,但不幸的是我遇到了错误 我看到这是一个常见错误,但没有看到pom文件的修复程序 pom.xml <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/PO

我试图从一本书中下载一个Spring/Java代码来运行他们的代码并进行测试,但不幸的是我遇到了错误

我看到这是一个常见错误,但没有看到pom文件的修复程序

pom.xml

<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>
    <parent>
        <groupId>com.apress.springrecipes</groupId>
        <artifactId>core</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <artifactId>springintro</artifactId>
    <name>Introduction to Spring</name>
    <dependencies>

        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jboss.javaee</groupId>
            <artifactId>jboss-jca-api</artifactId>
        </dependency>

    </dependencies>


</project>

m2e不是Maven。POM文件错误表示Eclipse的Maven插件(m2e)不知道如何处理“复制依赖项”:“解包”目标。m2e的工作方式必须理解目标在pom文件中的作用,以便在Eclipse构建中复制该行为

您可以做两件主要的事情:

  • 告诉Eclipse忽略目标-这将使您不会得到错误。解包步骤永远不会在Eclipse增量构建期间发生,它仍然会在执行完整的Maven构建时发生
  • 安装一个“连接器”,它告诉Eclipse在遇到该目标时应该做什么。可以找到此目标的连接器
  • 至于maven资源插件,除了升级POM中指定的插件版本,我看不到任何其他选项。错误是Eclipse的Maven插件不能与这么旧的Maven插件一起工作


    我不知道是什么原因导致文件未找到错误,但我怀疑这是因为该文件包含在Eclipse未解压缩的文件中。

    m2e不是Maven。POM文件错误表示Eclipse的Maven插件(m2e)不知道如何处理“复制依赖项”:“解包”目标。m2e的工作方式必须理解目标在pom文件中的作用,以便在Eclipse构建中复制该行为

    您可以做两件主要的事情:

  • 告诉Eclipse忽略目标-这将使您不会得到错误。解包步骤永远不会在Eclipse增量构建期间发生,它仍然会在执行完整的Maven构建时发生
  • 安装一个“连接器”,它告诉Eclipse在遇到该目标时应该做什么。可以找到此目标的连接器
  • 至于maven资源插件,除了升级POM中指定的插件版本,我看不到任何其他选项。错误是Eclipse的Maven插件不能与这么旧的Maven插件一起工作


    我不知道是什么原因导致文件未找到错误,但我怀疑这是因为该文件包含在Eclipse未解包的内容中。

    @Pace所说的完全正确,我相信OP应该尝试了解m2e在做什么。就我个人而言,我讨厌m2e在0.10之后的行为,他们为此引入了连接器概念。这个概念很好,但告诉Eclipse如何应对不受支持的插件的方法是严重污染POM,这在我看来很糟糕。切换回旧的M2E版本可能会使您的生活更轻松,尽管您会丢失一些功能

    回到您的问题,从您引用的错误消息:

    m2e不支持2.4之前的maven资源插件。使用maven资源插件2.4版或更高版本

    在我看来,m2e确实支持maven resources插件>=2.4(我不确定,我以前没有遇到过类似的问题)。尝试在POM中使用更新版本(2.4或更高版本,最新版本为2.6)的maven resources插件,M2E可能会为您选择设置

    i、 e

    
    ...
    org.apache.maven.plugins
    maven资源插件
    2.6
    ....
    ....
    

    在您使用的插件版本上盖章总是一个好的做法。这将导致更“可复制”的构建。

    @Pace所说的完全正确,我相信OP应该尝试理解m2e在做什么。就我个人而言,我讨厌m2e在0.10之后的行为,他们为此引入了连接器概念。这个概念很好,但告诉Eclipse如何应对不受支持的插件的方法是严重污染POM,这在我看来很糟糕。切换回旧的M2E版本可能会使您的生活更轻松,尽管您会丢失一些功能

    回到您的问题,从您引用的错误消息:

    m2e不支持2.4之前的maven资源插件。使用maven资源插件2.4版或更高版本

    在我看来,m2e确实支持maven resources插件>=2.4(我不确定,我以前没有遇到过类似的问题)。尝试在POM中使用更新版本(2.4或更高版本,最新版本为2.6)的maven resources插件,M2E可能会为您选择设置

    i、 e

    
    ...
    org.apache.maven.plugins
    maven资源插件
    2.6
    ....
    ....
    

    在您使用的插件版本上盖章总是一个好的做法。这将导致一个更“可复制”的构建。

    您的应用程序中有bean.xml吗?是的,我在项目下有bean.xml吗?您的应用程序中有bean.xml吗?是的,我在项目下有它,我刚刚安装了Maven Integration for Eclipse,但仍然收到旧版本错误错误错误不是m2e(针对Eclipse的Maven集成)对于Maven来说太旧了,但是您在pom.xml文件中定义的插件对于m2e来说太旧了。我猜您正在阅读的书没有使用Eclipse或者使用了非常旧的Eclipse版本。您需要修改他们提供的文件,首先更新应该列出的Maven resources插件的版本在将beans.xml移动到正确的文件夹后,我能够修复它。看起来它无法加载beans文件…但我仍然在pom.xml文件中看到错误…我如何知道maven资源插件的版本…我应该去更新xml文件的标记吗…感谢您的时间我刚刚安装了maven Integrattion for Eclipse,但我仍然得到了旧版本的错误。错误不是m2e(Maven integration for Eclipse)对于Maven来说太旧,而是y
    Jul 17, 2013 3:51:20 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
    INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@be41ec: startup date [Wed Jul 17 15:51:20 EDT 2013]; root of context hierarchy
    Jul 17, 2013 3:51:20 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFO: Loading XML bean definitions from class path resource [beans.xml]
    Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [beans.xml]; nested exception is java.io.FileNotFoundException: class path resource [beans.xml] cannot be opened because it does not exist
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:341)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212)
        at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:126)
        at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:92)
        at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
        at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:465)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:395)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
        at com.apress.springrecipes.hello.Main.main(Main.java:10)
    Caused by: java.io.FileNotFoundException: class path resource [beans.xml] cannot be opened because it does not exist
        at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:141)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:328)
        ... 13 more
    
    maven-dependency-plugin (goals "copy-dependencies", "unpack") is not supported by m2e.
    maven-resources-plugin prior to 2.4 is not supported by m2e. Use maven-resources-plugin version 2.4 or later.
    
    <project>
    ...
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-resources-plugin</artifactId>
              <version>2.6</version>
            </plugin>
          </plugins>
           ....
        </pluginManagement>
          ....
      </build>
    </project>