相关疑难解决方法(0)

带有Gradle的Robolectric:未找到资源

我正在尝试与新的Gradle Android构建系统一起运行我的Robolectric测试,但我一直在访问我的主项目的资源.

我将构建拆分为两个单独的项目,以避免javaandroidgradle插件之间发生冲突,因此目录结构大致如下所示:

.
??? build.gradle
??? settings.gradle
??? mainproject
?   ??? build
?   ?   ??? classes
?   ?   ?   ??? debug
?   ??? build.gradle
?   ??? src
?       ??? main
?           ??? AndroidManifest.xml
?           ??? ...
??? test
    ??? build.gradle
    ??? src
        ??? test
            ??? java
                ??? ...
                    ??? test
                        ??? MainActivityTest.java
                        ??? Runner.java
                        ??? ServerTestCase.java
                        ??? StatusFetcherTest.java
Run Code Online (Sandbox Code Playgroud)

build.gradletest/目前看起来是这样的:

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.stanfy.android:gradle-plugin-java-robolectric:2.0'
    }
} …
Run Code Online (Sandbox Code Playgroud)

android gradle robolectric

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

如何将包标记为资源文件夹?

我有一个Intellij 12的目录结构:

   ...
   ...test
       - java
         - com.mycompany.myproject
           - package1 (contains code, etc,.)
           - resourcePackage (want to contain .json files but can't mark as a resource)
             - myOtherJunk.json
           - o o o
       - resources
         - aResource.json
Run Code Online (Sandbox Code Playgroud)

问题是,如果我右键单击我的包名(com.mycompany.myproject),我只能添加包而不是目录(如现有资源文件夹的目录).

但是,我不想将我现在要读取的.json文件的现有资源文件夹用于我的测试类.

所以,我需要一些东西来支持:

// this already works for the resources directory per the .json file but doesn't for the 
// myOtherJunk.json per the resourcePackage.
InputStream is = MyClassTest.class.getResourceAsStream("aResource.json");
Run Code Online (Sandbox Code Playgroud)

intellij-idea

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

标签 统计

android ×1

gradle ×1

intellij-idea ×1

robolectric ×1