问题标签 [artifactory]

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 投票
3 回答
5729 浏览

python - 将python包鸡蛋存放在神器中是个好主意吗?

目前我正在开发自动化测试框架。这个测试框架有不同的包。这些包将在不同的项目中引用,并且可以由开发人员在本地进行修改。我想管理python包鸡蛋。我正在考虑使用 Artifactory。我试图为 Python 寻找 Artifactory 帮助,但我找不到任何有用的东西。
我应该使用 Artifactory 还是 PIP ?

编辑:
python中是否有任何方法或命令可以帮助我将鸡蛋放入神​​器中?

0 投票
3 回答
12171 浏览

python - 如何使用python将任何文件放入工件中?

我有一个要求,任何文件都应该使用 python 语言放入工件中。我试图在整个互联网上搜索,但找不到任何帮助。

请分享代码片段或可以帮助我实现这一目标的东西。

非常感谢您提供任何帮助。

0 投票
1 回答
9546 浏览

gradle - Gradle脚本无法解析工件

我正在使用 Gradle 访问 Artifactory。Artifactory 具有特定的依赖关系,但不知何故 gradle 无法向 Artifactory 发送任何请求。即使我试图清理缓存并运行gradle build命令来获取文件。但我没有取得任何成功。通过 gradle.build 文件如下。

每当我运行 gradle 脚本时,它都会失败并出现以下异常和堆栈跟踪。

一件非常奇怪的事情是,相同的脚本文件在另一台机器上工作,但在我的机器上却不起作用,即使另一台机器具有相同的配置和设置。

我试图在互联网上搜索,但无法获得任何帮助。任何形式的帮助都非常感谢这里。

0 投票
1 回答
4805 浏览

scala - 让 Maven 和 SBT 都使用本地 Artifactory-server

我需要让 Maven 和 SBT 都使用本地 Artifactory-server,它是唯一具有 Internet 连接的机器。服务器、CI 机器等无法访问外部世界。

尤其是 SBT,我的头发变白了。

连接到 Artifactory 的 SBT 问题

使用 0.11.[0..3] 我可以通过以下方式 SBT 访问 Artifactory:

  • 解压 sbt-launcher.jar
  • 获取 sbt.boot.properties 并将其复制到某处
  • 编辑 sbt.boot.properties 以仅包含“本地”存储库和我们的 Artifactory 服务器

对于 0.12 或 0.13 版本,我没有运气。我已经尝试过这里的说明:https ://github.com/harrah/xsbt/pull/472 。所以我做了以下工作:

  • 我自己建立了 SBT
  • 我已将“存储库”文件放入 ~/.sbt/
  • “存储库”文件包括:

    [repositories]

    local

    ivy-proxy: http://devserver:8081/artifactory/repo/, [organization]/[module]/[revision]/[type]s/[artifact](-[classifier]).[ext]

    maven-proxy: http://devserver:8081/artifactory/repo/

  • 我在 SBT 的启动命令中包含了“-Dsbt.override.build.repos=true”,现在看起来像这样:

    java -Xms1536m -Xmx1536m -XX:MaxPermSize=384m -XX:ReservedCodeCacheSize=192m -Dsbt.override.build.repos=true -Dsbt.global.base=/Users/amjr/.sbt/0.13.0-SNAPSHOT -jar /Users/amjr/.bin/.lib/0.13.0-SNAPSHOT/sbt-launch.jar

但是 0.12 和 0.13 拒绝访问 Artifactory,而是尝试直接连接到 typesafe、maven central 等。

SBT确实访问它时的工件和问题

现在对于 0.11 系列的 SBT,我可以让它连接到 Artifactory。然后是 SBT 无法找到编译项目所需的包的问题。这是示例:

这显然与 Artifactory 配置有关。如果有人有任何指示我应该如何以及应该使用 Artifactory 代理哪些存储库以便成功地将它与 SBT 一起使用,我将不胜感激。

0 投票
1 回答
1933 浏览

ivy - Ivy/Maven Resolve:不要拉传递“提供”的罐子

我在我的项目中使用 Ivy,但我们使用 Artifactory 作为我们的 jar 存储库。我实际上使用<ivy:makepom>Ant 任务来创建 Maven pom.xml,因此我可以通过 Maven deploy:deploy 工作流将 jars 和 war 部署回我的 Maven 存储库。

我构建了一个名为的大 jar common-all.jar,它的编译需要大约 30 个 jar。我指定了大约 10 个 jar,Ivy 拉下依赖项。作为编译过程的一部分,我指定了 log4j jar 和一些 JBoss jar。当然,这些罐子将由我们的环境提供。

有了这个Jar,我也打了一堆。我将 指定common-all.jar为我的依赖项的一部分,并且common-all.jar需要的 30 个罐子也被拉下。一切都很好。

问题是当我建立战争时。我不希望将 JBoss jar 或 log4j jar 作为战争的一部分。这些将由环境提供。我已将它们标记为pom.xml 文件中提供的内容。当我建立common-all.jar.

现在,问题是我如何在编译战争代码时指定我想要这些,但我不想将它们包含在我的战争本身中。

这是我的ivy.xml文件示例。

如何指定common-all.jar编译需要某些特定的 jar,但是当我在战争中构建它时,我不想要所有这些 jar

0 投票
3 回答
1213 浏览

java - Maven 如何与不同的存储库交互?

Maven 如何与 Nexus 和 Artifactory 等不同的存储库交互?

是使用他们的 REST API 完成的吗?可以将依赖工件解析到实际位置以使用这些 API 获取它们,但是这两个 API 彼此有些不同(据我所知[Artifactory] ​​[Nexus])和 Maven pom 文件中的存储库定义元素不包含用于说明存储库类型的属性。

那么 Maven 是如何将 artifact 的 groupId、artifactId 和 version 解析为不同存储库中的实际文件的呢?这些存储库是否实现了其他一些标准化 API,使 Maven 能够以与存储库无关的方式从它们请求文件?

0 投票
2 回答
612 浏览

artifactory - Artifactory 远程仓库和 Terracota

我想设置我的 maven settings.xml 文件以从 Artifactory 缓存下载所有外部依赖项,而不是直接从任何公共存储库(如 repo1、repo2 或 Jboss)下载它们。我按照http://wiki.jfrog.org/confluence/display/RTF/Configuring+Artifacts+Resolution上的说明进行操作,但我遇到了 terracota 库的错误,错误是:

我尝试在远程存储库部分添加 terracota 存储库,但这也不起作用。

请指教。

0 投票
1 回答
1073 浏览

maven - Maven 覆盖所有存储库

我将我的 pom 配置为覆盖中央存储库和快照。但是,一些依赖项具有自己的 pom 设置和自己的存储库,并且这些依赖项倾向于访问 Web。

例如,grizzly 设置 glassfish 存储库。ActiveMQ 设置 jboss 等。

我可以设置类似 - 覆盖所有存储库以转到我自己的存储库吗?

0 投票
1 回答
5384 浏览

artifactory - 工件是否支持同一工件的多个版本?

假设我有工件“mylibrary-5.2.jar”和“mylibrary-5.3.jar”代表我们的项目为我们的其他项目之一创建和发布的库的 5.2 和 5.3 版本。

Artifactory 是否支持拥有每个这些工件的多个“版本”来表示在发布期间执行的不同构建以构建此工件?

例如,为了生成“mylibrary”的 5.2 版本(即工件:mylibrary-5.2.jar )的最终版本,我们进行了 3 次构建,以获得通过了集成环境自动化测试和用户验收测试的版本。

因此,有三个独立的构建为 5.2 版生成了三个独立的工件。我们希望能够保留并可能在以后调用这些不同构建的工件(用于测试等)。

为了做到这一点,以下哪个选项会起作用?

  1. 将工件捕获为单独的工件,即 build-5.2-b1.jar(构建 1 的工件)、build-5.2-b2.jar(构建 2 的工件)、build-5.2-b3.jar(构建 3 的工件)和 build- 5.2.jar(最终生产版本;与构建 3 匹配)

  2. 捕获一个名为“build-5.2.jar”的单个工件,该工件具有捕获构建 1 到 3 的工件的版本,并且可以稍后按版本号调用。

  3. 我们没有考虑过的其他一些选择,但应该
0 投票
1 回答
2185 浏览

ant - 在 Artifactory 中创建本地存储库

我刚刚开始在我们公司安装 Jenkins 以及 Artifactory 和 Ivy。

Jenkins 将调用我们的 ant 构建脚本,然后这些脚本将转向 Ivy 从本地 repo 中检索 jars(仅)。

我们希望有 2 个本地存储库:1 个用于我们的本地工件,1 个用于 3rd 方 jars。

我们的目的是确保开发人员仅检索已在 Artifactory 中由管理员“批准”的第 3 方 jar。

然后构建脚本将从本地存储库中获取。

所以我的问题是:我们如何设置本地存储库以包含构建的工件?如果 Artifactory 无法访问互联网,它如何检索第 3 方罐子?

有没有更好的方法来做到这一点?