Maven正试图从maven.ocean.net.au更新glassfish插件
我们无法部署我们的应用程序,因为Maven正在尝试从maven.ocean.net.au存储库更新glassfish插件,尽管我们的pom中没有定义这样的存储库。 问题是maven.ocean.net.au不在线,因此我们的构建失败。 这件事发生在其他人身上吗?
我想你正在使用org.glassfish.maven.plugin:maven-glassfish-plugin:2.2-SNAPSHOT
,它确实声明了http://maven.ocean.net.au/snapshot作为快照存储库。
我的建议是使用插件的发布版本,例如2.1版(此插件的发布版本托管在java.net Maven2存储库中 )或修补版本2.2到内部企业存储库(即不使用来自Ocean Maven2 Snapshot Repository的快照 )。
如果没有使用其他存储库具有您尝试使用的glassfish插件的版本,则依赖项解析将仅失败。
确保您的maven设置有几个其他插件存储库(最好的是一个本地存储库,代理对远程服务器的请求,以构建Maven工件的巨大本地缓存),以便在无法访问单个存储库时解决方案不会失败。
我也有同样的问题。 但是,使用java.net Maven2 Repository无法解决它,因为这是对ocean.net.au存储库的引用来自的地方: http : //download.java.net/maven/2/org/glassfish/maven /plugin/maven-glassfish-plugin/2.1/maven-glassfish-plugin-2.1.pom也许他们应该改变他们的.pom?
我也有同样的问题。 我此时发现的唯一解决方案是从所有依赖项中删除所有存储库(或将它们切换为enabled = false)(3)。
他们应该将所有这些存储库放入配置文件中,这是一个可怕的解决方案。 如果服务器有任何响应,它会更好,但它只是挂起。 超时设置也会被忽略。
我通过右键单击POM并在离线模式下创建新的运行配置,在eclipse中解决了这个问题。 显然,保存的maven构建会忽略全局设置并使用自己的配置。 当然,如果你真的需要其他更新,你将会等待很长时间,但这对我有所帮助。
这是它的3.1版本上的Glassfish Maven插件的.pom
的一个问题:现在已经定义了三个离线的存储库,我相信它们没有用处,因为一切都在Central。 它可能是一些未被删除的快照的剩余部分。
我发现了一种肮脏的方法来消除产生的延迟,直到maven将请求超时到那些脱机服务器:
- 导航到本地存储库
- 输入文件夹
.m2\repository\org\glassfish\maven\plugin\maven-glassfish-plugin\2.1
- 使用任何文本编辑器打开文件
maven-glassfish-plugin-2.1.pom
- 转到读取
的第146行(3.1版)并通过为发行版和快照设置
来禁用所有3个存储库false - 对第202行中的
执行相同的操作(在3.1版中) - 删除文件
maven-glassfish-plugin-2.1.pom.sha1
和maven-glassfish-plugin-2.1.pom.md5
以防止Maven下载它们并覆盖这些更改
它并不聪明,它并不酷,它不是迄今为止最好的解决方案,但至少你可以节省几分钟再次重新部署。
- 设置/配置EJB Timer Service的DataSource
- Java EE安装程序在Mac OS X Mavericks上崩溃
- Glassfish 3.1.2.2上Web应用程序的上下文路径
- 为什么我收到Maven错误:“无法确定资源X是否存在于http://maven.glassfish.org/content/groups/glassfish”?
- 在专有软件中使用Glassfish库
- 我可以(以及如何)使用EJB模块中的javax.naming.Context#lookup查找CDI托管bean吗?
- 如何手动在Eclipse中配置Glassfish Server
- 如何从同一GlassFish Server上的其他应用程序注入EJB?
- 什么是玻璃鱼?