gpt4 book ai didi

java - 如何在本地 lib 目录中确定此 jar 的 maven 坐标?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:19:25 24 4
gpt4 key购买 nike

我是 maven 的新手,正在将 java web 应用程序转换为 maven(而不是由我的 IDE 管理)。我了解可以在本地安装依赖项(首选)或将其声明为提供的依赖项(第二选择)。 I read about groupIdartifactIdversion 是什么意思。但是,它没有解释如何确定 jar 的确切坐标。

The jar in question (servlet-api.jar of apache-tomcat 7.0.34)例如,jar 中没有 pom.xml 文件。

最佳答案

当你有一个随机的 jar 文件时,在本例中是 servlet-api.jar,存在于某个文件夹中,你必须四处寻找以确定它是否与某个版本相同。

一个:查看 jar 内部并记下其中文件的日期(或日期范围)。您可能会注意到其中有哪些文件。您可能需要该详细信息。

:到可以找到 jar 的地方。我喜欢http://mvnrepository.com/您可以在其中输入 jar 的名称。 “servlet-api”。我在大约 10 秒内找到了这个:

<dependency>
<groupId>org.apache.tomcat</groupId>
<artifact>servlet-api</artifactId>
<version>6.0.36</version>
</dependency>

但它不是你的。 (又过了 30 秒,我发现了这个:mvnrepository servlet-api for tomcat 7.0.34)

  • 然后您可以下载您认为匹配的那个并查看其中的日期是否匹配。
  • 它基本上是这里的侦探工作。您可能会找到带有 maven“坐标”的确切 jar,但也可能找不到。

阅读其他答案提醒我,对于 Java EE jar,我发现最好使用通用版本来构建您的应用程序。对 Maven 范围使用“提供”。容器将提供真正的 jar,如果它不是完全标准的,您将不会使用非标准部分,因为您的构建使用的是通用版本。

因此,例如,您可以使用:

<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>

关于java - 如何在本地 lib 目录中确定此 jar 的 maven 坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14613352/

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