标签: build-dependencies

如何从git中提取依赖项工件?

我听说过(而且我知道我也见过一些例子,只要我能记得哪里)sbt可以从git repo获得依赖.

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

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

git scala build sbt build-dependencies

101
推荐指数
4
解决办法
3万
查看次数

我应该如何在Xcode工作区中跨项目管理依赖项?

我正在开发一个iOS应用程序项目,并将json-framework项目添加到工作区.左侧的项目导航器显示两个项目,构建方案选择器也显示两个项目的方案.现在我想从json-framework项目中添加libjson.a目标作为对其他项目中iOS应用程序目标的依赖.预期的结果是,无论何时构建应用程序目标,它都会构建(如果需要)库目标并将应用程序目标链接到它.以下是我尝试这样做的方法:

  • 构建两者作为同一方案的一部分.我尝试这种方式的方法是编辑我的应用程序的方案,将"libjson.a"添加到方案的"Build"部分,并选择"Find Implicit Dependencies"方式.然后我转到我的app目标的目标编辑器,在"Build Phases" - >"Link Binary With Libraries"中,我从工作区库列表中选择"libjson.a".当我随后尝试构建该方案时,我看到它构建了库目标,但构建应用程序目标失败,链接器错误"找不到-ljson的库" - 表明它实际上没有发现库已经构建.实际上,在项目导航器中,库的应用程序项目下的条目仍为红色,表示该文件不存在.

  • 将json目标添加为显式依赖项.要尝试此操作,我不会修改构建方案,而是转到我的应用目标的目标编辑器,然后单击"目标依赖项"下的"添加"按钮.工作区中没有其他项目的目标显示,所以这是一个非首发.

  • 将JSON项目拖到另一个项目中,然后将目标添加为依赖项.这就是我在Xcode 3中所做的.在项目导航器中,我抓住了库项目并将其拖到app项目上.这会显示通常的"添加文件"窗格,我只需单击"完成"即可关闭该窗格.项目导航器中的库项目现在有两个条目:一个位于顶层,另一个位于应用程序项目下.我现在可以使用目标编辑器将库目标添加为应用程序目标的依赖项,并且可以在链接库阶段中无错误地链接它.但它看起来很糟糕:导航器中的同一项目有多个条目.有没有不同的方法来做到这一点?

什么应该被认为是在同一工作区中的不同项目中连接这些目标的"Xcode 4-ish"方式?如果同一工作空间中的多个项目实际上不能彼此交互,那么似乎缺乏.谢谢,格雷厄姆.

xcode xcode4 build-dependencies

59
推荐指数
2
解决办法
5万
查看次数

Xcode:将项目添加为构建依赖项

我正在玩soundcloud api,在它的说明中说

  • 将SoundCloudAPI.xcodeproj拖入您的项目
  • 将其添加为构建依赖项

我可以很容易地拖动项目,但是如何完成下一步呢?

xcode xcodebuild build-dependencies

49
推荐指数
3
解决办法
10万
查看次数

Maven管理依赖项 - 从父pom解析$ {project.version}

如何${project.version}从父pom中为托管属性解析占位符?我期望它在全局范围内得到解决,因此当父pom具有版本2时,${project.version}也将被解析为版本2.

在父母pom我有:

<groupId>my.group</groupId>
<artifactId>parent</artifactId>
<version>2</version>
<packaging>pom</packaging>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>my.group</groupId>
            <artifactId>dep</artifactId>
            <version>${project.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>     
Run Code Online (Sandbox Code Playgroud)

在我使用的孩子

<parent>
    <groupId>my.group</groupId>
    <artifactId>parent</artifactId>
    <version>2</version>
</parent>
<version>1</version>
<artifactId>child</artifactId>
Run Code Online (Sandbox Code Playgroud)

但是使用了工件my.group.dep.1.jar而不是my.group.dep.2.jar.因此,占位符使用托管依赖项解析为项目版本,而不是定义依赖项的项目版本.

这是预期的行为吗?我正在使用maven 3.0.4.

maven-3 maven build-dependencies

39
推荐指数
1
解决办法
7万
查看次数

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

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

maven build-dependencies

32
推荐指数
4
解决办法
5万
查看次数

如何使用完全不同的构建系统处理第三方库?

C++(和C,虽然它更重要)标准状态,程序中的所有翻译单元需要具有相同的定义; 这包括编译器开关之类的东西.例如,在MSVC++中,必须链接到C运行时库的正确版本(/MT/MD/MTd/MDd所有翻译单元).

但是,我们想要使用几个第三方依赖项,并且有几件事情:

  • 他们都使用不同的构建系统(有一个autoconf,有一个cmake,并且有一个似乎有它自己的手工卷制的东西..)
  • 构建系统并非都在其配置中公开这些类型的交换机,并且硬编码的交换机在不同的系统中设置不同.(例如,一个库的力量/MD/MDd,而另一种力量/MT/MTd)

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

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

我们不知道该怎么办; 我们无法相信我们一个人就有这些问题.我们应该选择上述选项之一,还是我没想过的第三种选择?

c c++ dependencies build-dependencies

23
推荐指数
2
解决办法
1657
查看次数

Maven + Spring Boot:在类路径上发现多次出现的org.json.JSONObject:

当我跑步时,mvn test我得到这个警告.我该如何解决?

Found multiple occurrences of org.json.JSONObject on the class path:

        jar:file:/C:/Users/Chloe/.m2/repository/org/json/json/20140107/json-20140107.jar!/org/json/JSONObject.class
        jar:file:/C:/Users/Chloe/.m2/repository/com/vaadin/external/google/android-json/0.0.20131108.vaadin1/android-json-0.0.20131108.vaadin1.jar!/org/json/JSONObject.class

You may wish to exclude one of them to ensure predictable runtime behavior
Run Code Online (Sandbox Code Playgroud)

这是我的pom.xml.对JSON的唯一引用是

    <!-- https://mvnrepository.com/artifact/org.json/json -->
    <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

Apache Maven 3.5.3

java spring maven build-dependencies spring-boot

19
推荐指数
3
解决办法
5446
查看次数

Xcode 4:如何向项目添加静态库目标依赖项

我知道,这已被问过几次,但主要是针对Xcode 3.x. 对于iPad,我有两个项目都住在一个共同的工作区

  • Foo,一个基于视图的应用程序和
  • Foolib,一个静态的Cocoa-Touch库

前者取决于后者.我似乎无法弄清楚如何添加该依赖项.在文档中没有很好地解释,所以我尝试了以下内容:

  1. 单击左侧导航区域中的Foo项目,
  2. 选择Build Phases up the top并展开Target Dependencies部分
  3. 单击加号按钮,但结果列表为空.

我也尝试将.a文件拖放到该部分,但收效甚微.此外,文档说明

如果工作空间中一个项目的构建产品依赖于工作空间中另一个项目的构建产品(例如,如果一个项目构建另一个项目使用的库),Xcode会发现这样的隐式依赖关系并以正确的顺序构建.

我想知道Xcode如何发现这些依赖项.Apple是否说我根本不需要添加这个目标依赖项?但那么Xcode如何发现一个人正在使用另一个?

最后但同样重要的是,我需要将Foolib的.h文件以某种方式传递给Foo.建议的方法是什么?显然,我不想只是复制它们.对于框架,头文件包含在内,但人们在处理它们自己并行开发的静态库时通常会做些什么.

向正确的方向轻推将非常感激.谢谢.

xcode4 build-dependencies

17
推荐指数
1
解决办法
4万
查看次数

获取依赖项运行时列表

最近我正在做一些研究工作Android Dependencies,一个问题困在我的脑海里.问题是我们可以使用java代码获取依赖项列表吗?

例如,我的build.gradle文件中的依赖项

dependencies {
   compile 'com.google.android.gms:play-services:+'
   compile 'com.facebook.android:facebook-android-sdk:4.1.0'
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我想在应用程序运行时获取这些依赖项的名称,我们可以得到它吗?

android build-dependencies android-studio build.gradle

13
推荐指数
1
解决办法
2338
查看次数

如何正确地将 jitpack.io 添加为 build.gradle 中的存储库?

我想使用 Stepper-Touch github 库。为此我必须添加 jitpack.io

allproject{ 
    repositories{
        [here] 
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的 build.gradle 项目文件中。没有

allproject{...}
Run Code Online (Sandbox Code Playgroud)

部分,所以我自己添加了它,但我得到了这个错误

Build was configured to prefer settings repositories over project repositories but repository 'maven' was added by build file 'build.gradle'
Run Code Online (Sandbox Code Playgroud)

然后我寻找答案,发现有人说我应该删除

dependencyResolutionManagement
Run Code Online (Sandbox Code Playgroud)

我的 settings.gradle 文件中的部分。我这样做了,但其他依赖项(例如约束布局、实时数据的依赖项)停止工作。帮帮我,我该如何解决这一切?:(

android gradle build-dependencies

12
推荐指数
1
解决办法
9033
查看次数