标签: dependencies

当Scala的新版本问世时,看到依赖关系破坏是正常的吗?

我刚刚开始使用Scala开发,并且正在尝试将"newman"库添加到我的项目中,以便我可以执行JSON + REST.

不幸的是,我收到以下错误:

[error] (*:update) sbt.ResolveException: unresolved dependency: com.stackmob#newman_2.11;1.3.5: not found
Run Code Online (Sandbox Code Playgroud)

对于该项目的一些github问题,有一些提及没有2.11支持.所以,正如我的问题所说 - 这是正常的吗?我来自PHP生态系统,新版本的PHP解释器很少会导致编写器出现问题.

我应该注意我正在使用的Scala版本是什么?有没有办法绕过这个限制并强行安装?这是一个好主意吗?

dependencies scala sbt

0
推荐指数
1
解决办法
359
查看次数

无法加载缺少特定版本的文件或程序集

在我的解决方案中,我有一个第三方A.dll与另一个B.dll(特定版本=真)依赖.但我有B.dll的旧版本,它有错误:

无法加载文件或程序集'B,Version = 2.0.0.1,...'

但我有B.dll与旧版本(2.0.0.0)

那我怎么解决我的问题呢?
如何松散版本依赖?
寻找更老的力量不存在?

什么是重要的A和B是第三方.所以我无法改变它.

c# clr dependencies assemblies visual-studio

0
推荐指数
1
解决办法
1708
查看次数

无法解决:'de.greenrobot:eventbus:2.4.0'

我使用过Android Studio,但是当我尝试添加:compile 'de.greenrobot:eventbus:2.4.0'dependencies在我的应用程序组件的gradle这个文件,我得到一个横幅:项目同步成功.打开"消息"视图以查看找到的错误.在消息窗格中,它显示错误消息:

Error:(28, 13) Failed to resolve: de.greenrobot:eventbus:2.4.0
<a href="openFile">Show in File</a><br><a href="open.dependency.in.project.structure">Show in Project Structure dialog</a>
Run Code Online (Sandbox Code Playgroud)

在github上检查EventBus时,我发现maven central上确实存在最新版本.

它可能是一个Android工作室配置错误或什么?

以下是其他依赖项工作正常(没有事件总线依赖):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.aiesec"
        minSdkVersion 9
        targetSdkVersion 22
        versionCode 1
        versionName "0.1"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile 'com.parse.bolts:bolts-android:1.+'
    compile 'com.nineoldandroids:library:2.4.0'
    compile …
Run Code Online (Sandbox Code Playgroud)

dependencies android maven android-studio greenrobot-eventbus

0
推荐指数
1
解决办法
3133
查看次数

无法更新库的gradle依赖项

这是我最初在build.gradle文件中的内容.

    dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'de.hdodenhof:circleimageview:2.0.0'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'com.github.bumptech.glide:glide:3.6.1'
    compile 'com.android.support:support-v4:23.0.1'
    compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
    compile 'com.github.clans:fab:1.6.1'
    compile 'joda-time:joda-time:2.8.2'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.afollestad:material-dialogs:0.7.9.1'
    compile 'com.wdullaer:materialdatetimepicker:1.5.3'
    compile 'com.android.support:palette-v7:23.0.1'
}
Run Code Online (Sandbox Code Playgroud)

材料对话框已更新,所以我试图在我的gradle文件中反映相同.图书馆说我应该像这样添加它.

    dependencies {
    compile('com.afollestad.material-dialogs:core:0.8.1.0@aar') {
        transitive = true
    }
}
Run Code Online (Sandbox Code Playgroud)

所以我尝试了这个,但是当我尝试这个时它拒绝重建项目,并且错误地说"未能解决:com.afollestad.material-dialogs:core:0.8.1.0"

    dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'de.hdodenhof:circleimageview:2.0.0'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'com.github.bumptech.glide:glide:3.6.1'
    compile 'com.android.support:support-v4:23.0.1'
    compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
    compile 'com.github.clans:fab:1.6.1'
    compile 'joda-time:joda-time:2.8.2'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.wdullaer:materialdatetimepicker:1.5.3'
    compile 'com.android.support:palette-v7:23.0.1'
    compile('com.afollestad.material-dialogs:core:0.8.1.0@aar') …
Run Code Online (Sandbox Code Playgroud)

dependencies android gradle material

0
推荐指数
1
解决办法
5732
查看次数

运行我的Gradle Liquibase插件时,我在哪里放置MySql JAR依赖项?

我在Windows 7上使用Gradle 2.7.我想在运行时运行我的Liquibase插件

gradle build
Run Code Online (Sandbox Code Playgroud)

所以我在build.gradle文件中有以下代码

// In this section you declare the dependencies for your production and test code
dependencies {
    // The production code uses the SLF4J logging API at compile time
    compile (

        'commons-beanutils:commons-beanutils:1.8.3',
        'commons-collections:commons-collections:3.2.1',
        'org.apache.commons:commons-dbcp2:2.1.1',
        'commons-lang:commons-lang:2.6',
        'commons-logging:commons-logging:1.2',
        'org.apache.commons:commons-pool2:2.4.2',
        'org.directwebremoting:dwr:3.0.0-RELEASE',
        'org.apache.httpcomponents:httpclient:4.5.1',
        'org.codehaus.jackson:jackson-core-asl:1.9.13',
        'org.codehaus.jackson:jackson-mapper-asl:1.9.13',
        'net.sf.json-lib:json-lib:2.4:jdk15',
        'jstl:jstl:1.2',
        'log4j:log4j:1.2.15',
        'joda-time:joda-time:2.8.2',
        'org.mybatis:mybatis:3.3.0',
        'org.mybatis:mybatis-spring:1.2.3',
        'mysql:mysql-connector-java:5.1.36',
        'org.springframework:spring-aop:4.2.1.RELEASE',
        'org.springframework:spring-aspects:4.2.1.RELEASE',
        'org.springframework:spring-beans:4.2.1.RELEASE',
        'org.springframework:spring-context:4.2.1.RELEASE',
        'org.springframework:spring-context-support:4.2.1.RELEASE',
        'org.springframework:spring-core:4.2.1.RELEASE',
        'org.springframework:spring-expression:4.2.1.RELEASE',
        'org.springframework:spring-instrument:4.2.1.RELEASE',
        'org.springframework:spring-instrument-tomcat:4.2.1.RELEASE',
        'org.springframework:spring-jdbc:4.2.1.RELEASE',
        'org.springframework:spring-jms:4.2.1.RELEASE',
        'org.springframework:spring-messaging:4.2.1.RELEASE',
        'org.springframework:spring-test:4.2.1.RELEASE',
        'org.springframework:spring-tx:4.2.1.RELEASE',
        'org.springframework:spring-web:4.2.1.RELEASE',
        'org.springframework:spring-webmvc:4.2.1.RELEASE'
    )

...
liquibase {
  activities {
    main {
        File propsFile = …
Run Code Online (Sandbox Code Playgroud)

mysql dependencies liquibase gradle

0
推荐指数
1
解决办法
2118
查看次数

依赖注入 - 参数的数字

我有一个类需要很多依赖 - 在我看来,很多依赖是8和更多.它在IDE中看起来很难看,因为它会破坏行,在一种情况下我有3行构造函数签名:

第一步

public class FooClass
{
    public FooClass(IDependency1 dependency1, IDependency2 dependency2, ..., IDependency8 dependency8, IDependency9 dependency9)
    {
        ...
    }

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

我决定停止使用这种方法并创建依赖项字典.我取得了什么?漂亮的构造函数签名,但更容易获得运行时异常的可能性.

第二步

public class FooClass2
{
    private IDictionary<Type, object> dependencyDictionary;

    public FooClass2(IDictionary<Type, object> dependencyDictionary)
    {
        this.dependencyDictionary = dependencyDictionary;
        ...
    }

    ...

    public T GetObject<T>()
    {
        return (T)this.dependecyDictionary.FirstOrDefault(t => t.Key == typeof(T));
    }

    // USAGE
    public void FooMethod()
    {
        IDependency1 = this.GetObject<IDependency1>();
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

但是注册这种类型现在很难看.作为一个例子,我使用的是AutoFac,但任何其他依赖容器具有相同的行为.

var builder = new ContainerBuilder();
builder.Register(c => new FooClass2(new Dictionary<Type, …
Run Code Online (Sandbox Code Playgroud)

c# dependencies dependency-injection unity-container autofac

0
推荐指数
1
解决办法
63
查看次数

更改.c文件的注释时,scons仍然重新编译它?

据说scons使用MD5签名作为默认决策来确定源文件是否需要重新编译.例如,我有SConstruct如下:

Library('o.c')
Run Code Online (Sandbox Code Playgroud)

我的oc是:

$ cat o.c
    /*commented*/
    #include<stdio.h>
    int f(){
      printf("hello\n");
      return 2;
    }
Run Code Online (Sandbox Code Playgroud)

运行scons并删除注释行,再次运行scons.我希望scons不应该再次编译它,但实际上它是:

gcc -o o.o -c o.c
scons: done building targets.
Run Code Online (Sandbox Code Playgroud)

如果我更改SConstruct文件添加一行:

Decider('MD5').
Run Code Online (Sandbox Code Playgroud)

还是一样的结果.

我的问题是:如何确保对于scons,在更改源文件注释时,它们不会重新构建?

谢谢!

linux rebuild dependencies gcc scons

0
推荐指数
1
解决办法
59
查看次数

尝试将Gradle项目包含为依赖项,但include()不起作用

我有一个Gradle项目,它取决于另一个Gradle项目.我的项目结构是这样的:

  • PROJECT1
    • 的build.gradle
    • settings.gradle
    • SRC /
  • 项目2
    • 的build.gradle
    • settings.gradle
    • SRC /

project1/build.gradle我想添加project2为依赖:

version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

sourceSets {
    main {
        java {
            srcDirs = [ 'src' ]
        }
    }
}

include ':project2'
project(':project2').projectDir = new File("../project2")

dependencies {
    compile project(':project2')
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,我总是收到此错误消息:

错误:(21,0)无法在org.gradle.api.Project类型的根项目'project1'上找到参数[:project2]的方法include().

我正在使用Gradle 3.5,我在命令行(gradle build)和IntelliJ中都收到此错误.我找到了一些关于同一问题的StackOverflow线程(这个这个),但它们没有帮助.

摇篮多项目文档也没有提到,我可能会丢失,可能会导致错误的任何特殊要求.

当我离开include呼叫时,我收到的消息是在根项目中找不到项目路径.

我也尝试将依赖项移动到子目录project1,但没有成功.

我想知道我做错了什么,为什么显然没有其他人有同样的问题.我很感激提示. …

java dependencies intellij-idea gradle

0
推荐指数
1
解决办法
4471
查看次数

Android Studio 3.X更新并失去与AChartEngine的连接(找不到符号类ChartFactory)

我在我的项目中使用AChartEngine并将其连接到build.gradle via

allprojects {
    repositories {
        jcenter()
        maven {
            url = "https://repository-achartengine.forge.cloudbees.com/snapshot/"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在更新Android Studio和Gradle\Building机制后,我无法构建\使一组具有类似错误的项目如下 -

Error:(53, 24) error: cannot find symbol class ChartFactory
Run Code Online (Sandbox Code Playgroud)

对于每个java类,我在那里执行"import org.achartengine.ChartFactory"

我尝试添加"编译组:'org.achartengine',名称:'achartengine',版本:'1.2.0'"我尝试过Invalidate caches\Restart和Clean\Rebuild项目,我更改了标签maven中的语法并添加url后面的符号"=".它仍然不起作用.

Gradle 3.X或4.X没有看到包含libs的方式:maven {url =" https://repository-achartengine.forge.cloudbees.com/snapshot/ "

请帮我解决这个问题.

java dependencies android achartengine

0
推荐指数
1
解决办法
1176
查看次数

无法在android中访问我的模块嵌套依赖项

我创建了一个具有类依赖关系的android模块,如下所示:

implementation 'com.squareup.moshi:moshi:1.5.0'
implementation 'com.neovisionaries:nv-websocket-client:2.3'
Run Code Online (Sandbox Code Playgroud)

我将此模块添加到我的项目中.当我想使用它时,它说"无法访问com.neovisionaries.Adapter".

1 - 为什么它无法访问因为我认为我的Async类在后台调用该方法?

2 - 我应该将该依赖项添加到我的项目中吗?

我的模块课程

public class Async extends WebSocketAdapter {
   ....
public Async() {
}

public static Async getInstance(Context context) {
    if (instance == null) {
        sharedPrefs = context.getSharedPreferences(AsyncConstant.Constants.PREFERENCE, Context.MODE_PRIVATE);
        moshi = new Moshi.Builder().build();
        instance = new Async();
    }
    return instance;
}


public void webSocketConnect(String socketServerAddress, final String appId) {
        WebSocketFactory webSocketFactory = new WebSocketFactory();
        webSocketFactory.setVerifyHostname(false);
        setAppId(appId);
        setServerAddress(socketServerAddress);
        try {
            webSocket = webSocketFactory
                    .setConnectionTimeout(TIMEOUT)
                    .createSocket(socketServerAddress)
                    .addListener(this);
            webSocket.connectAsynchronously();
        } catch (IOException e) …
Run Code Online (Sandbox Code Playgroud)

dependencies android module

0
推荐指数
1
解决办法
469
查看次数