问题标签 [build-dependencies]

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 回答
778 浏览

version-control - 我可以在 Mercurial 中嵌套子存储库吗?

我在 Mercurial 中使用 subrepos 设置项目时遇到问题。

目标:

我想像这样设置结构:

所以有三个存储库:Build、A 和 B。B 嵌套在 A 中,A 嵌套在根构建存储库中。build repo 将用于跟踪依赖项,subrepo A 将用于跟踪主要源文件,subrepo B(和其他)将用于跟踪模块/插件开发。

问题/问题

通过简单地将 Subrepo_A 路径和源添加到 .hgsub 文件并将其提交到构建仓库,我可以轻松设置初始构建仓库和嵌套的 Subrepo_A。但是,当我将 subrepo_B 路径/源添加到构建 repo 的 .hgsub 后,然后尝试提交时,我收到错误消息:

中止:路径“Subrepo_A/Modules/Sebrepo_B”在嵌套仓库“Subrepo_A”内

Mercurial 似乎不喜欢在已经嵌套的 repo 中的嵌套 repo。这是真的,还是我错过了什么?关于如何管理构建/依赖关系的任何更好的想法?

0 投票
4 回答
30672 浏览

git - sbt 如何从 git 中提取依赖项?

我听说过(而且我知道我也看过一些例子,只要我记得在哪里)sbt可以从 git repo 获取依赖项。

我希望从 github获取依赖项 harrah/up 。该存储库不提供任何工件 JAR 文件,仅提供一个源树,它设置为使用sbt. 我想象的过程是sbt下载源代码库,构建它,然后将其用作依赖项。

我可能在想象sbt实际上可以做这样的事情。它可以?如果是这样,怎么办?

0 投票
7 回答
73713 浏览

maven - 如何将 Maven 依赖项以可读格式打印到文件中?

我正在处理一个包含许多 pom.xml 文件的大型项目,我需要指定我使用的所有库。这意味着我需要递归读取 pom.xml 文件并获取 groupId、artifactId、范围和版本。我检查了 mvn dependency:tree 但我找不到以可读格式将其打印到文件的方法。我看到了 appendOutput,但没有看到如何在 cmd 中使用它的示例。我看到了一些在 Linux 中完成的解决方案,但我只能访问 Windows XP。

0 投票
1 回答
154 浏览

wcf - 使用解耦设计的 TFS 构建定义

我们的 TFS 构建服务器上有一个 WCF 服务,它具有解耦设计。我正在尝试确定如何将解耦的程序集自动移动到已发布的网站/bin 文件夹中,因为编译器没有看到依赖项。我们使用 Ninject 来处理依赖注入,因此编译器不知道说程序集 x 依赖于程序集 y。所以 bin 只包含我们服务的接口程序集,而不是我们的具体实现。有没有办法通过构建定义更新来处理这个问题?如果是这样,我们将如何做到这一点?

谢谢!

0 投票
2 回答
2600 浏览

grails - 在 maven 下使用 grails 指定“提供的”依赖项

我有一个 grails 1.3.7 应用程序。我正在使用 Spring 的 JMS 类将我的一个 grails 服务设置为消息侦听器,在 grails-app/conf/resources.groovy 中设置这些类。我使用 maven 2.0.9 进行构建,使用 grails-maven-plugin 1.3.7 和“maven-war”目标来创建一个 war 文件。

我有两种情况:

  1. 我希望能够使用“mvn grails:run-app”从命令行本地运行我的 grails 应用程序。我在开发过程中使用它。
  2. 我希望能够通过部署 maven 创建的 war 文件在 JBoss 5.1.0 GA 中运行应用程序。这就是我们在集成、测试和生产环境中所做的。

在 JBoss 中运行时,所有与 JMS 提供程序相关的依赖项都可用并由应用程序服务器提供。使用 maven 处理此问题的正常方法是在 pom 文件中声明这些依赖项,范围为“provided”。这将使这些依赖项可用于编译和单元测试,但将它们从 war 文件中排除。

但是,当我使用“mvn grails:run-app”从命令行本地运行时,这些依赖项似乎在运行时对 grails 不可用,许多 ClassNotFound 等异常证明了这一点。将范围更改为“编译”允许我在本地运行。但是,现在这些依赖项被打包到我的 war 文件中,这是我不想要的,并且在 JBoss 中运行时往往会破坏事情。

我现在找到的解决方案(或解决方法)是在我的 pom 中包含这些具有默认(编译)范围的 JMS 依赖项,并通过 BuildConfig.groovy 中的一些代码从 war 文件中删除这些 jars(及其所有传递依赖项)(见下文)。这可行,但它很混乱且容易出错,因为我必须列出每一个传递依赖项(其中有很多!)。

我尝试过的其他一些事情:

起初,我想也许我可以将所需的 JMS 依赖项添加到 BuildConfig.groovy 的“grails.project.dependency.resolution / dependencies”部分,并将它们完全排除在 pom 之外。但是,这不起作用,因为根据此链接,在 maven 下运行 grails 时忽略 BuildConfig 依赖项部分。

我还注意到“pom true”选项(在上面的链接中提到)并尝试使用它。但是,当尝试运行 grails:run-app 时,grails 会抛出有关未解决依赖项的警告并给出一个 tomcat 错误:

我的问题:有没有更好的方法 - 通过 grails 和/或 maven 配置选项 - 来完成我想要的 - 即能够在本地和 JBoss 内成功运行 grails,而不必手动从 war 文件中排除所有传递依赖项?

注意:我无法更改我正在使用的 grails、JBoss 或 maven 的版本。

相关文件的一些摘录:

BuildConfig.groovy:

pom.xml:

资源.groovy:

0 投票
1 回答
7329 浏览

javascript - require.js:require.config 路径优化

我愿意使用 require.js 优化器来优化我的 javascript 应用程序,但我现在想知道是否也可以将 require.config 路径以及 javascript 模块包含在一个文件中。事实上,在运行 r.js 之后,我想得到一个最终的 javascript 文件,它是 main-built_v_0_1.js,包括所有路径 + 其他 js 文件。

这里有我的 main.js 文件:

然后我有我的backbone.js 文件,即app.js、router1.js、model1.js、view1.js 等......

以前有人做过吗?如果可以这样做,那么 require.js 如何解决这些遍布整个应用程序的别名?

0 投票
2 回答
1345 浏览

msbuild - msbuild,多个项目和依赖解析

我有由 10 个项目组成的解决方案。每个项目都有一个测试程序集(制作 20 个项目)。

目前,我的构建脚本构建所有测试程序集,然后运行所有测试,非常棒。除了每个测试程序集(直接和间接)引用 2 个或更多核心程序集外,这意味着有很多冗余的构建正在进行。

如何简化事情(不减少装配数量)以加快构建速度?

我想我可以直接构建每个项目而无需解决项目间引用并将其全部放在一个输出目录中,但是我如何仍然解决其他引用项目必须到 3rd aprty ddls 等。

其他建议?

谢谢

0 投票
0 回答
248 浏览

regex - Maven 没有找到 lucene-regex.jar

我在项目的pom.xml中添加了lucene-regex依赖项:

但是当我运行时mvn installBUILD FAILURE出现以下错误:

Maven 设法找到lucene-regex-3.0.3.pom并将其复制进去,.m2\repository\org\apache\lucene\lucene-regex\3.0.3但找不到包含此包的.jar 。

知道为什么吗?

谢谢

0 投票
4 回答
2112 浏览

c++ - 如何处理具有完全不同构建系统的第三方库?

C++(和 C,尽管在那儿不太重要)标准规定程序中的所有翻译单元都需要具有相同的定义;这包括编译器开关之类的东西。例如,在 MSVC++ 上,必须在所有翻译单元中链接到正确版本的 C 运行时库( /MTvs /MDvs /MTdvs )。/MDd

但是,我们想使用一些第三方依赖项,其中有几件事:

  • 他们都使用不同的构建系统(有一个 autoconf,有一个 cmake,还有一个似乎有它自己的手卷的东西..)
  • 构建系统并非都在其配置中公开这些类型的开关,并且硬编码的开关在不同的系统中设置不同。(例如,一个图书馆力量/MDand /MDd,而另一个力量/MTand /MTd

我们不确定处理这类事情的最佳方法是什么。我们讨论了以下选项:

  • 围绕任何第三方依赖项构建我们自己的构建系统。
    • PRO:我们知道事情会匹配
    • PRO:我们知道我们可以以正确的方式进行跨平台支持
    • CON:我们并不确切知道每个第三方构建系统是如何工作的
    • 缺点:很多很多的工作
    • CON:如果第三方依赖发生变化则中断
  • 尝试使用第三方构建系统,并尝试修改它们以做我们需要的事情。
    • PRO:似乎工作量更少
    • CON:我们可能会破坏第三方系统
    • CON:如果第三方依赖发生变化则中断
    • CON:迫使我们自己的构建变得非常复杂

我们不知道该怎么做;我们无法相信只有我们一个人遇到这些问题。我们应该做上面的选择之一,还是我没有想到的第三种选择?

0 投票
2 回答
10990 浏览

xcode - Xcode如何添加外部项目

我需要向我的 Xcode 项目添加一个外部项目,原因是我需要在该外部项目静态库上添加一个目标依赖项。

我似乎无法以我需要的方式添加它,我希望它是这样的:

在此处输入图像描述

但是,当我将另一个项目添加到我的实际 Xcode 项目中时,我得到以下内容,这不允许我从我的项目中探索该项目,因此我无法添加我需要的依赖项。

在此处输入图像描述

请注意,这些屏幕截图来自两个不同的项目,其中一个向我展示了我想在自己的项目中重现的内容,拖入多个项目按预期工作。

也许我的项目中有一些设置错误?我所做的只是从 Xcode 获取模板详细信息主应用程序。