问题标签 [nexus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3361 浏览

maven-2 - 无法从 Nexus 获得正确的包裹?“mvn帮助:有效设置”中的错误

我使用nexus开源版本maven 2.2.1

当我输入“mvn help:effective-settings”时,出现以下错误

当我检查 ~.m2\repository\org\apache\maven\plugins\maven-help-plugin 下的本地存储库时

它有一个文件 maven-metadata-central.xml

而且我在目录下找不到任何 jar 文件,nexus 服务器有什么问题?我无法轻松地从 nexus 找到支持信息。

任何提示

0 投票
2 回答
1814 浏览

maven-2 - maven 的 buildNumber 元数据如何在多个构建代理之间变得不一致?

我们最近在我们的构建环境中添加了第二台构建机器,并且开始遇到非常奇怪的偶尔构建失败。

我有两个单独的 Maven 构建机器AB,每个都运行 Maven 2.2.1 并与共享的 Nexus 1.5.0 存储库管理器通信。我的问题是,在B上构建偶尔会失败,因为它拒绝下载以前由A构建并上传到 Nexus的常见依赖项“ acme-1.0.0-SNAPSHOT ”的较新版本。

查看两台机器上的本地存储库,我注意到存储库元数据中有一些奇怪之处。

机器A的 acme\1.0.0-SNAPSHOT\maven-metadata-nexus.xml:

机器B的 acme\1.0.0-SNAPSHOT\maven-metadata-nexus.xml:

在 Nexus 的 acme/1.0.0-SNAPSHOT/maven-metadata.xml 中:

如果我正确解释元数据文件(在线文档很少),机器B似乎认为它具有更新版本的acme依赖项(基于 buildNumber),尽管机器A上次构建它是在机器B 6 天后完成的(基于时间戳)。Nexus 似乎也不知道普遍正确的 buildNumber。

这种情况怎么可能出现?我可以做些什么来防止我的构建由于元数据不一致而失败?你有过类似的经历吗?

重要笔记:

  • 两台构建机器都有 settings.xml 文件,其中 updatePolicy 是“始终”。
  • Nexus 确实具有由A构建的更新版本的acmeB只是拒绝下载它。
  • AB是唯一上传到 Nexus 的机器。
  • 两台服务器共享相同的系统时间。
  • 所有涉及的进程都具有对元数据文件的写入权限,以便可以根据需要对其进行更新。
  • 我找不到任何描述此行为的开放 Maven 或 Nexus 问题。
  • 我们的 CI 服务器 (Atlassian Bamboo) 防止构建相同的工件同时发生,因此在上传到 Nexus 时出现一些竞争条件是不太可能的。
0 投票
1 回答
2829 浏览

tomcat - 在 Gentoo (log4j) 上将 Sonatype Nexus 部署到 Tomcat6 时遇到问题

我在 Gentoo 上运行一个 tomcat-6 服务器。我无法将 Nexus 部署到我的 tomcat 服务器(来自 sonatype 网站的 nexus-war,以及通过emerge 的 tomcat6)。启动 Nexus 时,localhost 日志显示以下内容:

出于某种原因,它会在 /dev/null 中查找 sonatype-work 文件夹。我一直无法找到解决此问题的方法。log4j.properties 位于 /var/lib/tomcat-6/webapps/nexus-webapp-1.6.0/WEB-INF/log4j.properties 并包含以下内容:

以前有人处理过这个吗?任何帮助是极大的赞赏。

0 投票
2 回答
5605 浏览

maven-2 - 一些 sonatype 关系问题

我在 LAN 中部署了 sonatype nexus 服务器,将一些远程存储库映射到我的公共存储库:

替代文字 http://img576.imageshack.us/img576/5517/7875d01884ad4234a5b02e2.png

第一个问题是,为什么这些存储库不与“真实”存储库同步?例如,我将 maven central ( http://repo1.maven.org/maven2 ) 映射到“central”,但是当我浏览http://smallufo:8081/nexus/content/repositories/central/org/springframework/时,包不完整,在http://repo2.maven.org/maven2/org/springframework/中,有大量的工件,但我只有其中一些:

替代文字 http://img63.imageshack.us/img63/6163/31beec445d6b4e9eb96beba.png

并且版本很旧......例如:spring-core 只有 2.5.6.SEC01 ,但最新版本是 3.0.2.RELEASE。而我的 maven 客户端似乎只能找到旧的工件... alt text http://img199.imageshack.us/img199/3872/maven.gif

“central”是一个代理目录,应该和远程服务器一样。我试图“过期缓存”、“重新索引”、“增量重新索引”整个“中央”: 替代文本 http://img23.imageshack.us/img23/8467/391bd49409c94aa58640afe.png

经过很长时间几乎 100% 的 java 进程负载,情况似乎并没有好转,只是添加了一些工件......没有反映真正的“Maven Central”数据......

第二个问题,“Expire Cache”、“ReIndex”、“Incremental ReIndex”有什么区别?

即使我可以“搜索” spring-core.3.0.2.RELEASE ,我的 m2eclipse 仍然找不到它: alt text http://img217.imageshack.us/img217/9360/18c15abab4f343b0848a819.png

我还可以在“索引”中看到 spring-core-3.0.2.RELEASE,(但在“存储”中不可用): alt text http://img268.imageshack.us/img268/7041/maven2.gif

但是为什么 m2eclipse 不能使用它呢?似乎m2eclipse只能在存储中安装工件,如果这是nexus的工作方式,我该如何“强制”下载spring-core-3.0.2.RELEASE到nexus的存储?

我该如何解决这些奇怪的不兼容问题?非常感谢 !

- 更新 -

似乎 m2eclipse 和 maven-3.0-beta1 有问题。

在我改回 maven 2.2.1 后,现在一切正常。

对不起,打扰了。

0 投票
3 回答
6195 浏览

build - 常春藤和快照(Nexus)

我正在使用 ant、ivy 和 nexus repo manager 来构建和存储我的工件。我设法让一切正常:依赖解析和发布。直到我遇到问题......(当然!)。

我正在发布到 nexus 中的“发布”存储库,该存储库被锁定为“禁用重新部署”(即使您将设置更改为“允许重新部署”(在 imo 那里真的很蹩脚的 UI)。你可以想象我当时有多生气在我意识到发生这种情况之前,我的更改并没有通过 repo 更新。

无论如何,我现在必须切换所有内容以在 nexus 中使用“快照”存储库。问题是这弄乱了我的发布。我尝试了很多东西,包括广泛的谷歌搜索,但什么都没有。我得到的错误是一个错误的 PUT 请求,错误代码 400。

有这个工作的人可以给我一个关于我缺少什么的指针。

非常感谢,

阿拉斯泰尔

仅供参考,这是我的配置:

请注意,我已经删除了任何让快照工作的尝试,因为我不知道什么是实际(可能)有用的,什么是完全的胡说八道。因此,这是仅工作版本的设置。

另外,请注意我添加了 XXX-API ivy.xml 仅供参考。我什至无法发布 xxx-common(甚至没有依赖项)。

蚂蚁任务:

几个 ivy 文件给出内部依赖的概念:

XXX-普通项目:

XXX-API 项目:

常春藤设置.xml:

0 投票
1 回答
8367 浏览

maven-2 - 使用 Maven 在 Nexus 中自动上传工件

我正在尝试自动化将 Maven 生成的工件上传到 Nexus 托管存储库的过程(如 maven 目标,它将生成的 jar 上传到 Nexus 中的指定存储库)。这可能吗?在 Nexus 文档中,他们只讨论了手动上传。

我还查看了 nexus maven 插件,并没有指定类似的内容。

提前致谢

0 投票
2 回答
6767 浏览

maven-3 - 如何使用 nexus/maven 将依赖项添加到 3rd 方库

我正在尝试专业地使用 Nexus + m2eclipse/maven-3,而且我有一个庞大的 3rd 方库,需要很多依赖项。

有什么方法可以通过将这个第三方库上传到 Nexus 来减轻我的痛苦,并且所有依赖项都链接在一起,这样任何需要它的人都只需要为这个庞大的库添加 maven-dependency-tag 吗?

我需要自己创建 pom 吗?

感谢您的帮助。

0 投票
4 回答
2999 浏览

java - 如何从公司防火墙后面使用新的 JBoss Maven 存储库?

我依赖于Hibernate 3.5.3,它只能从新的JBoss Maven 存储库中获得,它托管在SonatypeNexus上,并且所有 URL 都使用 HTTPS 保护。

我可以通过 Web 浏览器从公司防火墙后面访问此存储库。但 Maven 无法解析工件。

我在构建开始时看到以下警告:

我希望在 global settings.xml 的部分中添加以下内容应该对我有用:

但这对我不起作用。

在我的 pom.xml 中,我声明了以下存储库依赖项:

我被限制使用 Maven 2.0.8,但我已经检查过,它也不适用于 Maven 2.2.1。

0 投票
0 回答
2013 浏览

maven-2 - 首次在 Nexus 中部署工件

当我们第一次尝试在 nexus 存储库中上传我们的工件时,我收到以下错误

我仔细检查了我的 nexus 用户名和权限,并根据 maven settings.xml 中指定的用户名和权限对其进行了验证,发现它们是正确的。还有什么我可能会丢失的吗???

0 投票
2 回答
2997 浏览

maven-2 - Nexus 存储库包含工件,但仅使 POM 可用

我有一个 Nexus 实例,其 Maven 2 存储库托管在未连接 Internet 的公司开发域上。我需要使用 Sun 的maven-jaxb-schemagen插件,但是,它只能以 Maven 1 格式提供(以及许多其他 Maven 1 依赖项,因此这不是一次性的极端情况)。

我在 Nexus ( maven1 ) 中创建了一个新的 Maven 1 托管存储库,然后也创建了一个 Maven1-to-Maven2 虚拟存储库 ( maven1as2 )。因为一些所需的工件是快照,所以maven1(以及扩展名maven1as2)的策略是Snapshot

我通过文件系统将所有 Maven 1 工件导入到此存储库的覆盖本地存储位置。

然后我将maven1as2添加到我的公共存储库组中。我发现的一些参考资料说 Nexus 不允许您浏览或搜索 Maven1 存储库。我的结果好坏参半。如果我在 Nexus 中选择Public Repositoriesmaven1as2,我可以转到Browse Storage并向下钻取到com/sun/tools/jxc/maven2/maven-jaxb-schemagen-plugin/1.3-SNAPSHOT/并查看maven-jaxb-schemagen -plugin-1.3-SNAPSHOT.pom文件及其校验和。但是,我无法查看应该存在且位于文件系统上的JAR工件。

当我尝试使用 Maven 构建时,我得到以下信息: