问题标签 [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.
apache-flex - Adobe Flex/AIR Maven 集成
我正在编写一个 Adobe AIR 应用程序,该应用程序需要使用 maven 和 nexus 在 CI 中构建。我尝试关注这篇文章,这是来自源代码的最新文章,但我仍然不明白这些东西:
- 文章中的第一个和第二个 pom.xml 示例是否在同一个 pom.xml 文件中?
- 如何获取我的 CI 上的 Flex SDK 依赖项?
如果有人有一个完整的项目设置并经历了整个事情,那就太棒了。
maven-2 - Nexus 支持批量上传工件吗?
我想知道我们是否可以将工件大量上传到 Nexus 的存储库中。
maven-2 - Nexus/Artifactory 可以存储互联网 Maven 工件的副本吗?
当从 Internet 上的公共存储库(如 Maven Central)下载工件时,我想让 Nexus(或 Artifactory,我们尚未决定)存储工件的副本。
基本上,如果您的本地存储库中没有 jar 并且存储库管理器也没有它,我想向存储库管理器询问 jar,让它发送给我,并将其存储在存储库中经理和我当地的回购。然后,当另一个人向 repo manager 询问同一个 jar 时,它会从 repo manager 将其发送给他们,然后他们将其保存在本地 repo 中,而无需访问 Maven Central。
这听起来像是开箱即用的工作方式,但我看不到。我可以通过 repo 管理器查看 Maven 中心上的工件,但是当我使用 Netbeans 向我的项目添加依赖项时,它会直接从 Maven 中心下载它(显然)。回购管理器中没有缓存任何内容(据我所知)。
java - 如何在 Maven 管理的框架中修补子组件?
我需要为这个错误(http://www.mulesoft.org/jira/browse/MULE-3983)修补 mule 的 mule-transport-jms 子组件。“修复”很简单,但让我烦恼的是将修补的组件部署到我的本地 maven repo(由 Nexus 管理)并让它继续与 mule 的所有其他组件很好地配合。
我想要的是将我新修补的 mule-transport-jms 标记为版本号 2.2.1-patched,并让我的 esb 组件依赖于它以及仍然设置为版本的其他 mule 组件(例如 mule-core) 2.2.1。因为 mule-transport-jms pom(部分)读取如下:
有许多相互依赖关系依赖于 2.2.1 版本。将父版本(如上所示)更改为 2.2.1-patched 会破坏所有内容,添加一个版本标记,使其看起来像这样:
破坏了一些可能在父级 pom 中声明的依赖项(在这个项目的任何地方都没有提到那些失败的依赖项)。
当请求 mule-transport-jms v2.2.1 时,我可能会破解 Nexus 以始终检索我的修补版本,但这很脏。我真的很想能够准确地指定在我的客户端 pom 中使用哪个 GAV,以及何时升级(假设错误在 v3.0 中得到正确修复)只需更新我的客户端 pom 以指向版本3.0.0 和我打过补丁的 2.2.1 jar 只是被忽略了,不需要对 nexus 进行黑客攻击。显然,我还想避免检查每个 mule 组件并更新它们的 pom 并将它们全部重新部署为 2.2.1-patched。
有什么想法吗?
maven-2 - Nexus:将 jarvana 配置为远程存储库——URL 是什么?
我正在将 Ant 构建系统转换为使用本地 Nexus 镜像(1.3.6),并且似乎无法让 Nexus 代理 Jarvana 存储库。我们的依赖项之一是 jython 2.5,它仅在 Jarvana 上可用。
我在配置其他存储库代理时没有问题,例如http://download.java.net/maven/2/上的 java.net
对于 Jarvana,我已经尝试过
在所有情况下,浏览窗格都显示 .index 和 .meta 文件夹,并且 .index 填充有 nexus-maven-repository-index-* 文件,但搜索 jython 仅返回来自 Maven Central 的早期(2.2 和更早)版本.
我是否使用了错误的 URL,如果是,我应该使用哪个 URL?
deployment - 如何部署到 nexus(由 secureci 托管)?
就像之前的 SO-Answer 中推荐的那样,我正在运行 Secureci 的 VmWare 映像作为包含 maven、nexus、hudson、svn 的预配置开发基础架构。
现在我想在我的 Windows XP 机器上配置 maven 以将其工件部署到 nexus。但是当我像这样配置我的 pom.xml 时(取自Deploying Artifacts to Nexus):
...mvn deploy
打印错误消息:
在settings.xml
我这样配置用户名和密码:
问题:我必须使用什么配置来部署到 nexus?
我已经尝试过https
代替scp
,但是使用这个 maven 时遇到了缺少证书的问题。
我试过http
代替scp
,但secureci安装了防火墙来阻止对端口80(http)的访问,导致超时。
编辑:
我发现 nexus 将其工件存储在/root/sonatype-work/nexus/storage/snapshots/
. 但我不喜欢在我的settings.xml
.
编辑:
问:您是否为 Nexus 下的托管存储库启用了部署?
是的,它默认启用。
问: Nexus 是否监听 80 端口?
有一个 apache 在端口 80 上运行。
Server: Apache/2.2.8 (Ubuntu) DAV/2 SVN/1.4.6 mod_ssl/2.2.8 OpenSSL/0.9.8g mod_wsgi/1.3 Python/2.5.2
问:如果防火墙不允许 HTTP,为什么不为来自“主机”IP 的 HTTP 连接添加例外?
因为我假设 SecureCI 配置良好,并且应该有一种方法可以在不调整安装的情况下做到这一点。但也许我在这里太天真了。
java - Ivy 和 Nexus 的 Sourceforge 组织属性
尝试使用以下设置时:
和:
Nexus 预计
但是 net 和 sourceforge 像这样被完全删除:
java - Nexus 和 LDAP - 针对 OpenLDAP 服务器对用户进行身份验证时出现 JNDI 问题
我正在将 Nexus 存储库管理器 (nexus.sonatype.org) 与开源 LDAP 插件 (code.google.com/p/nexus-ldap/) 一起使用,我收到一个错误,表明使用了错误的协议版本(详情如下) . 该插件所做的只是使用 JNDI LDAP 服务提供者连接到我的 LDAP 服务器。如果您查看 nexus.log 文件中的堆栈跟踪,则会在 JNDI LDAP 实现中的上下文初始化期间发生异常。所以我的猜测是,下面描述的问题不是由 Nexus 插件引起的,而是由于 JNDI 的误用或对 LDAP 身份验证的误解。
任何关于这是如何引起错误的猜测或想法都非常感谢!
哪些步骤将重现该问题?
- 将 Nexus 配置为使用 OpenLDAP 1.2.x 服务器使用 LdapAuthenticatingRealm - 因此是 LDAP 协议的版本 2。
- 尝试从 OpenLDAP-Server 列出用户并将它们映射到 Nexus 配置 UI 中的角色 - 效果很好。
- 现在尝试使用已成功映射到角色的 LDAP 用户登录或验证正在运行的 Nexus 实例。
什么是预期的输出?你看到了什么呢?
尝试登录时,我收到错误消息“用户名、密码不正确或无权使用 Nexus 用户界面。再试一次。”。在 Nexus 日志文件中,我看到 Sun 的 JNDI-LDAP 实现(请参阅下面的日志文件中的堆栈跟踪)尝试使用给定信息初始化上下文以针对 LDAP 服务器对用户进行身份验证时引发异常。使用 Nexus UI 的用户查找工作正常,以及在身份验证期间执行的查找(请参阅下面的日志文件)。
CommunicationException ("[LDAP: error code 2 - version not supported]") 中包含的错误消息表明使用了错误的 LDAP 协议版本。我尝试明确使用协议版本 2,因为 OpenLDAP 版本 1.2.7-30 仅支持 LDAP v2(企业环境 - 服务器版本不可协商)。我通过检查您的源代码来做到这一点,添加行“env.put("java.naming.ldap.version", "2");" 到 se.devoteam.nexus.ldap.NexusLdapContextFactory:52。没有改变。
在测试期间,我在浏览 Sun 源代码时意识到 javax.naming.ldap.InitialLdapContext.InitialLdapContext() 方法所做的第一件事是将 ldap 协议版本设置为“3”(javax.naming.ldap.InitialLdapContext:131 )。尽管 Java6 文档解释了我使用的属性 (java.sun[dot]com/javase/6/docs/technotes/guides/jndi/jndi-ldap-gl.html#version) 并且 JNDI 教程将其作为解决协议版本冲突的正确方法 (java.sun[dot]com/products/jndi/tutorial/ldap/misc/version.html) 我想知道:有没有办法在使用 JNDI 时显式使用 LDAP 协议版本 2作为 LDAP 服务提供者?
接下来,我尝试使用最新版本的 OpenLDAP 服务器 (openldap2-2.3) 作为 LDAP 协议版本 3 请求的代理,它将它们委托给旧服务器。同样的问题,同样的例外。
附加信息
环境:Nexus Webapp 部署在 Tomcat 6.0.16 Nexus 版本:1.3.6 ldap-realm 版本:0.4 JRE 版本:JDK 1.6.0_14-b08 平台:虚拟环境 LDAP 目录品牌:OpenLDAP 1.2.7 和 2.2.3
nexus.log 的相关部分:
java - 让 Nexus 从没有 .index 文件的存储库中下载依赖项
我刚刚为我们公司安装了最新版本的 Nexus,它运行良好。我们添加了几个第 3 方存储库,其中一个没有 .index 文件。因此,Nexus 似乎无法对其进行索引,本地 maven 也无法在该存储库中请求 deps。绝对是不幸的。
除了手动下载 deps 并将它们安装在我们的第 3 方“托管”存储库中之外,还有什么方法可以解决这个问题?
有问题的 Maven 仓库:http ://wicketstuff.org/maven/repository
谢谢!
maven-2 - 无法通过 Nexus 代理到 maven repo
我正在使用 Nexus 免费添加(1.3.6),我正在尝试添加 Nexus 书 - Google Caja 中描述的代理存储库:http: //google-caja.googlecode.com/svn/maven。
添加新的代理存储库并配置远程位置后,我尝试重新索引存储库但看不到相关工件。
是否有人能够通过 Nexus 代理远程存储库并查看其工件?
罗南。