*这一部分是我的原始启动问题。请仔细阅读更新
我在eclipse中导入了一个显然取决于rengwuxian的android项目
由于我找不到jar并且不知道怎么做,我按照consuming-aars-eclipse中的说明进行了第二个项目,并将来自aar的工件作为android eclipse项目导入。
然后在我的原始项目中,我在布局文件中遇到了com.rengwuxian.materialedittext.MaterialEditText
的编译错误,我将这个新创建的aar项目作为参考添加(Project-> Properties-> Build Path-> Add项目)
编译错误得到解决! 但在我的布局文件中现在到处都定义了元素com.rengwuxian.materialedittext.MaterialEditText
我在资源定义中出现错误。
例如以下内容:
错误:找不到属性' baseColor'的资源标识符在 包' com.test
似乎抱怨的是:
<com.rengwuxian.materialedittext.MaterialEditText
android:id="@+id/client"
android:layout_width="match_parent"
android:layout_height="wrap_content"
.....
android:textColor="@color/text_color"
app:baseColor="@color/text_color"
app:primaryColor="@color/text_color" />
---&GT;应用程式:baseColor =&#34; @颜色/ text_color&#34;
这个@color/text_color
在原始应用程序包中的原始应用程序中定义,显然aar导入项目中的类(com.rengwuxian.materialedittext.MaterialEditText)无法查看/访问这些资源。
我该如何解决这个问题?或者还有另一种更好的解决方法吗?
注意:我还尝试将源链接添加到项目的res /文件夹的文件夹中,但没有解决此问题。
更新
我删除了对项目的引用,并将classes.jar添加到构建路径(此jar在aar项目中)。同样的问题
更新2:
我发现这有助于将aars导入eclipse aar-for-eclipse。我复制/粘贴了文件夹中的代码片段(任务copyJarDependencies等),但我得到了一个例外:
没有这样的属性:类的libDir:org.gradle.api.tasks.Copy_Decorated
所以我在`libDir = new File(project.projectDir,&#39; / libs&#39;)中添加了一个def。 然后这工作但我得到了:
无法找到属性&#39;编译&#39;在配置容器上
如何解决这个问题?我不知道要宣布什么或缺少什么
更新3:
我添加了apply plugin: 'java'
,现在编译属性正常,但我得到了:
configurations.releaseCompile.filter {it.name.endsWith&#39; jar&#39;}。每个{文件文件 - &gt; moveJarIntoLibs(file)}
我该如何解决这个问题呢?
我正在使用这个项目---&gt; https://github.com/rengwuxian/MaterialEditText
这篇文章---&gt; http://www.nodeclipse.org/projects/gradle/android/aar-for-Eclipse
答案 0 :(得分:0)
我在gradle上遇到了类似的问题,但是在android studio上。我的解决方案是使用
configurations.releaseCompile.filter {it.name.endsWith 'jar'}.each {moveJarIntoLibs(it)}
而不是:
configurations.releaseCompile.filter {it.name.endsWith 'jar'}.each { File file -> moveJarIntoLibs(file)}
请记住不要在同一个项目中应用java和android插件,因为它不会起作用(请参阅gradle with --debug --stacktrace)