gpt4 book ai didi

maven - 作用域 “provided”在Maven中给出安装错误

转载 作者:行者123 更新时间:2023-12-02 06:38:25 24 4
gpt4 key购买 nike

我正在尝试从提供POM的sourceforge(jtmt.sf.net)安装Maven发行版。 ew

mvn install

引发错误:
[ERROR]     'build.plugins.plugin[org.mortbay.jetty:maven-jetty6-plugin].depende
ncies.dependency.scope' for org.apache.geronimo.specs:geronimo-j2ee_1.4_spec:jar
must be one of [compile, runtime, system] but is 'provided'. @ line 653, column
20

pom包含以下代码:
      <!-- For web development with Jetty6 -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty6-plugin</artifactId>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8081</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-j2ee_1.4_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</plugin>

我假设POM过去曾工作过,但现在该项目处于休眠状态。

安装时我应该设置一些开关吗? (我正在使用mvn 3.0.3)。 FWIW distrib已在 lib/中 checkout 了大量库。

最佳答案

该项目可能与Maven 2一起使用。Maven3对插件的作用域更加挑剔,并且插件依赖项中不再允许作用域provided。你可以试试:

  • 完全删除依赖关系并重建(作用域provided意味着应该已经可以使用它了)
  • 仅删除<scope>标记(使其成为简单的compile依赖项)
  • 如果没有任何帮助,则可以尝试使用Maven 2
  • 进行构建

    现在在插件中禁止使用 provided的原因是 provided实际上是针对运行时环境(例如应用服务器)提供的依赖项的。 Jetty是一种特殊情况-它是经常用作插件的应用服务器。

    关于maven - 作用域 “provided”在Maven中给出安装错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12866954/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com