我是Maven的新手,正在尝试设置我的第一个POM
。我的应用程序将使用EhCache进行缓存。转到Maven Central Repo(链接here)我会复制粘贴<dependency>
标记并将其复制到我的pom.xml
中,如下所示:
...many dependencies above this point
<dependency>
<scope>compile</scope>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.0.1.Final</version>
</dependency>
<dependency>
<scope>compile</scope>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<scope>compile</scope>
<groupId>jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>3.5.3</version>
</dependency>
...many dependencies below this point
当我保存更改时,Eclipse构建工作区并在EhCache 2.5的开始<dependency>
标记上给出错误:
缺少神器net.sf.ehcache:ehcache:jar:2.5.0
所以我认为v.2.5.0或许它有问题,并且对2.4.7
(2.4.x
之前的最后2.5.0
版本)重复相同的操作。同样的交易。
由于我对Maven这么新,我甚至不知道从哪里开始寻找。我尝试了Project >> Clean
甚至重新启动了Eclipse,看看它是否只是一个典型的Eclipse“怪癖”。不。
我在想:
pom.xml
SO如何开始解决这个问题?提前谢谢!
答案 0 :(得分:8)
引用search.maven.org通常更安全。从那里依赖:
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>2.5.0</version>
<type>pom</type>
</dependency>
心灵型pom。来自模块的pom:
这是一个用于吸引ehcache-core和ehcache-terracotta的pom工件 用于群集。确保在依赖项中将“type”设置为“pom”。
显然当有人不需要兵马俑时,ehcache-core会像其他答案一样完美无缺。
答案 1 :(得分:8)
他们使用ehcache-core
in the official documentation。 ehcache
Maven Central does not have a jar artifact代表您的错误消息。
使用ehcache-core
将依赖项更改为:
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-core</artifactId>
<version>2.5.0</version>
</dependency>
在我的计算机上成功下载(ehcache
没有)。
答案 2 :(得分:0)
我把它放到了IntelliJ中,它找到了它。我怀疑你的设置有问题。尝试创建一个只包含此依赖项的项目。如果无法下载,我会检查您的设置。例如.m2/settings.xml
您使用的是Nexus服务器还是maven代理/缓存?