我正在尝试将ORMLite数据“编译器”实用程序的运行集成到我的android gradle脚本中。从各种来源,我已经确定了如何将它放置在具有所需依赖项的构建流中,以确保它在java编译之后运行,并且第二个任务将使用aapt使用生成的数据库定义文件更新apk。
我的主要问题是我不能让我的OrmLiteConfigUtil扩展类运行,因为JavaExec任务无法找到OrmLiteConfigUtil类
Error:Gradle: java.lang.ClassNotFoundException: com.j256.ormlite.android.apptools.OrmLiteConfigUtil
任务定义如下
applicationVariants.all { com.android.build.gradle.api.ApplicationVariant variant ->
def databaseTaskName = "${variant.name.capitalize()}DatabaseCompile"
def buildDir = getBuildDir()
def javaCompileTaskName = "compile" + variant.name.capitalize() + "Java"
def javaTask = project.tasks.findByName("${javaCompileTaskName}")
task "${databaseTaskName}" (type: JavaExec) {
main = 'com.barclaycard.bespoke.android.data.local.DatabaseConfigUtil'
dependencies {
classpath files("${buildDir}/intermediates/classes/${variant.dirName}")
}
}
if (javaTask != null) {
println "Adding post-compile hook to ${variant.name}"
javaTask.finalizedBy "${variant.name.capitalize()}DatabaseCompile"
}
}
并放置在构建的android部分中。格拉德尔
我尝试在任务的依赖项部分添加其他语句,但没有用。
compile 'com.j256.ormlite:ormlite-android:4.48'
(任务执行期间引发的ClassNotFoundException)
classpath 'com.j256.ormlite:ormlite-android:4.48'
和
classpath files('com.j256.ormlite:ormlite-android:4.48')
(无法将URL'com.j256.ormlite: omlite-android: 4.48'转换为文件。)
我看不到如何让JavaExec任务使用远程回购找到所需的类。
compile 'com.j256.ormlite:ormlite-android:4.48'
在主要项目依赖项中使用,效果良好。
在我的例子中,它与错误设置的环境变量有关:export LOCAL_LIB=D:\LIB vs export LOCAL_LIB=“D:\LIB”
所以,引用是个问题。
这里可能有点误解您的意思,但可能是您使用的依赖项错误吗?也许这是合适的
dependencies {
orm 'com.j256.ormlite:ormlite-android:4.48'
}
...
task "${databaseTaskName}" (type: JavaExec) {
main = 'com.barclaycard.bespoke.android.data.local.DatabaseConfigUtil'
classpath configurations.orm + files("${buildDir}/intermediates/classes/${variant.dirName}")
...
}
有点不确定这是否有效。configurations.orm我认为应该会产生影响。
在更换笔记本电脑并更新到Android Studio版本0.8.2后,我尝试构建项目时遇到此错误。 失败:生成失败,出现异常。 > 出了什么问题:在根项目'MyProject'中找不到任务。 Try:运行gradle任务以获取可用任务的列表。使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。 构建失败 以下是我的Gradle文件: 顶级
错误:任务执行失败 ': app:使用合并Java Res For Debug转换资源'。 com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException: APK META-INF/LICENSE File1中复制的重复文件: C:\用户Jithin-P
我在尝试构建应用程序时出现以下错误: plhd--7/>OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)在org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDa
我正试图编写一个简单的java程序,通过Spark从Cassandra读取数据。我是在POC级别做这件事的。我的代码是这样的 当我运行上述代码时,我得到了以下异常(下面粘贴了堆栈跟踪) 15/01/15 19:22:41警告调度程序。TaskSetManager:在0.0阶段(TID 1,ct-0094)中丢失了task 1.0:java。lang.ClassNotFoundException:c
问题内容: 我最近在Android项目中启动了一个新的默认项目。每当我尝试启动应用程序时,都会发生此错误: build.gradle(模块:应用) build.gradle(项目:EmerGencyHelp) 我的错误是 请帮助我,谢谢, 问题答案: 可能您没有在项目中正确添加suport-v4库。 检查一下: 您已将此库添加到需要它的所有模块中(如果您的项目中有多个模块,例如主模块和库模块)。