很可能你的POM定义对于log4j不正确。与log4j相关的所有内容都应该在Maven中轻松获得。
此外,如果你知道bundle的名称(例如log4j),你几乎总是可以通过快速谷歌搜索"[bundle name] maven pom"来获取信息。在前几个搜索结果中,你应该可以找到包含快速代码片段的Maven仓库,或者是打包好的jar文件的实际网站和Maven说明。
例如log4j:
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
</dependencies>
有时候,您只需要指定存储库以查找项目(如果它没有托管在更大的Maven存储库中)。
您可以像这样指定新存储库。
<repositories>
<repository>
<id>Java.Net</id>
<url>http://download.java.net/maven/2/</url>
</repository>
</repositories>
当你绝对找不到已经为你打好的 Maven 构件的时候(这通常适用于你不能将专有的 JAR 或驱动程序包含在你的项目中),你可以让用户通过命令行手动安装该项。
mvn install:install-file -DgroupId=[组 ID] -DartifactId=[构件 ID] -Dversion=[版本号] -Dfile=/path/to/the/file -Dpackaging=[类型]
然后,你可以使用上述信息在 maven 文件中引用它。
例如,我有一个 salesforce.com 项目的自定义引用
mvn install:install-file -DgroupId=com.salesforce -DartifactId=wsc -Dversion=22 -Dfile=\tsclient\H\development\java\wsc-22.jar -Dpackaging=jar
要在 Maven 中访问它:
<dependency>
<groupId>com.salesforce</groupId>
<artifactId>wsc</artifactId>
<version>22</version>
</dependency>
最后,您可以在它们各自的网站上找到JAR文件(或它们的Maven信息)(请注意,我只是根据JAR名称基于这些链接,这些可能不是实际的网站,除了我知道正确的log4j)
Stax
Clover
Log4j