Tag: android gradle

Kotlin Android库模块导出与gradle maven-publish插件不添加依赖关系

我正尝试使用gradle的maven-publish 插件导出在Kotlin中开发的Android库模块。 aar文件被成功生成并导出,但是没有依赖项被添加到它 – 完全不包括Kotlin的。 下面是基于这个答案的插件配置: apply plugin: ‘maven-publish’ Properties properties = new Properties() properties.load(project.rootProject.file(‘local.properties’).newDataInputStream()) ext { releaseRepository = “s3://****/maven/releases” snapshotsRepository = “s3://****/maven/snapshots” artifactRepository = “$buildDir/outputs/aar/render-engine-release.aar” _version = properties.getProperty(‘lib.version’) _artifact = properties.getProperty(‘lib.name’) _group = properties.getProperty(‘lib.group’) } task sourceJar(type: Jar) { from android.sourceSets.main.java.srcDirs classifier “source” } publishing { publications { maven(MavenPublication) { groupId _group artifactId _artifact […]

如何将Android的Java第三方库转换为kotlin?

有没有办法将第三方Android gradle库移植到kotlin。

Android应用程序中的Kotlin编译器:连接拒绝主机:127.0.0.1

我正在尝试在Docker中编译多模块android应用程序(这是一个CI构建)。 其中一些模块包含Kotlin源代码。 该构建在本地环境(MacOS)上运行良好,但出于某种原因在CI上失败。 本地环境 MacOS 10.125。 Java版本“1.8.0_121”(Java(TM)SE运行环境(build 1.8.0_121-b13) CI环境 Docker基础镜像openjdk:8-jdk 应用配置 Gradle Wrapper 4.0.-rc1 Android构建工具26 Kotlin版本’1.1.2-2′ gradle.properties(虽然我玩过所有的组合,但都没有奏效) org.gradle.daemon=true org.gradle.parallel=true org.gradle.jvmargs=-Xmx2048M org.gradle.configureondemand=true kotlin.compiler.execution.strategy=in-process 它看起来像是与某个远程进程有关,因为无法连接到它。 我想到了Kotlin和Gradle deamon,但是在玩了很多不同的gradle.properties和其他配置之后,我似乎无法得到一个gradle.properties的配置。 warning: [options] bootstrap class path not set in conjunction with -source 1.7 Using kotlin incremental compilation Using kotlin incremental compilation 1 warning Compilation with Kotlin compile daemon was not successful […]

Kotlin Dagger2找不到符号ApplicationModule_ProvideApplicationFactory

我试图用Kotlin使用Dagger2,但今天试图编译得到这个错误: 错误:任务’:app:compileDebugJavaWithJavac’的执行失败。 错误:(5,43)错误:找不到符号类ApplicationModule_ProvideApplicationFactory (应用程序)Build.gradle apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ android { compileSdkVersion 23 buildToolsVersion “23.0.3” defaultConfig { applicationId “com.ilyarb.geotags” minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName “1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } sourceSets { main.java.srcDirs += ‘src/main/kotlin’ } dexOptions { javaMaxHeapSize “2048M” } } […]

Android Studio在第二次构建后显示Kotlin依赖警告

我刚刚在Android项目中启用了Kotlin,我偶然发现了一个警告。 在第二次构建之后(Build – > Rebuild Project),这个警告显示在Messages: Warning:Runtime JAR files in the classpath should have the same version. These files were found in the classpath: ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.2.10/85fe1811f3e586d0cc53aba1394d8089f1862215/kotlin-stdlib-jdk8-1.2.10.jar (version 1.2) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-reflect/1.2.10/19bc012f8c4cd6b705bd6512263777cc19bcf259/kotlin-reflect-1.2.10.jar (version 1.2) /Applications/Android Studio.app/Contents/gradle/m2repository/org/jetbrains/kotlin/kotlin-stdlib-jre7/1.1.51/kotlin-stdlib-jre7-1.1.51.jar (version 1.1) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.2.10/cfe8b616b3bf0811ef70863c86b745a2e767a66e/kotlin-stdlib-jdk7-1.2.10.jar (version 1.2) ~/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.2.10/b9bf650516989595a5390e5a54181e16347208ac/kotlin-stdlib-1.2.10.jar (version 1.2) 看起来第二个版本包含来自缓存的过时的kotlin-stdlib-jre7-1.1.51.jar 。 清洁构建(Build – > Clean Project)后,警告消失,下一个重建项目再次启动。 我正在使用Android Studio 3.0.1,并且明确地将Kotlin依赖包括在版本中: 的build.gradle buildscript { ext { […]

使用Gradle从Kotlin链接到JVM的asm定义的类

我有一个Android应用程序的以下设置: ├── build.gradle └── src └── main ├── AndroidManifest.xml ├── asm │ └── SomeJVMClass.j ├── kotlin │ └── activity.kt └── res └── values └── strings.xml src/main/asm/SomeJVMClass.j的源文件是Krakatau格式的JVM程序集(与Jasmin几乎相同)。 我想使用它从我的主要Kotlin源activity.kt定义的类。 在我尝试使用Gradle自动执行这个操作之前,只是手动将文件组装到build并没有帮助。 这是我的尝试: 做一个gradle build来获取骨架build目录(这当然会失败,Kotlin编译器找不到SomeJVMClass ) 我手动运行Krakatau将其类文件放在build/intermediates/classes/{debug,release} : $ for flavor in debug release; do ~/prog/jvm/krakatau/assemble.py -out build/intermediates/classes/$flavor -r src/main/asm ;done Processing file src/main/asm/SomeJVMClass.j, 1/1 remaining Class written to […]

Gradle项目同步失败,Kotlin

我正在使用Beta Kotlin和Android-Studio频道。 更新到最新版本后,我得到了一些gradle同步错误。 以下是我从事件日志复制的日志: Error:Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.0-rc-39. Searched in the following locations: file:/home/yourpc/Android/android/gradle/m2repository/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.pom file:/home/yourpc/Android/android/gradle/m2repository/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.jar https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.pom https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.jar https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.pom https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.2.0-rc-39/kotlin-gradle-plugin-1.2.0-rc-39.jar Required by: project : 下面是build.gradle // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlin_version = ‘1.2.0-rc-39’ repositories { google() jcenter() } dependencies { classpath ‘com.android.tools.build:gradle:3.1.0-alpha04’ classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version” // […]

无法使用kotlin库

我正在尝试将这个库用于我的应用程序,但是因为它是在kotlin中创建的,所以我正面临着这个问题。 我下载了这个库的模块,并在项目中导入这个模块,但在初始状态我没有findgettin kotlin插件,所以我改变了gradel 这个 apply plugin: ‘com.android.library’ apply plugin: ‘kotlin-android’ android { compileSdkVersion 26 buildToolsVersion “26.0.2” defaultConfig { minSdkVersion 17 targetSdkVersion 26 versionCode 1 versionName “1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } sourceSets { main.java.srcDirs += ‘src/main/kotlin’ } resourcePrefix “yal_ms_” } buidscript { ext.kotlin_version = ‘1.0.1-2’ repositories { jcenter() […]

无法转换为org.jetbrains.kotlin.java.model.types.JeClassInitializerExecutableTypeMirror

我想升级到匕首2.8 – 但是现在我的项目在编译时会抛出这个错误: :android:compileWithAnalyticsWithCloudProdDebugAndroidTestKotlinAn exception occurred during annotation processing. Stacktrace: java.lang.ClassCastException: org.jetbrains.kotlin.java.model.types.JeMethodExecutableTypeMirror cannot be cast to org.jetbrains.kotlin.java.model.types.JeClassInitializerExecutableTypeMirror at org.jetbrains.kotlin.annotation.processing.impl.KotlinTypes.isSubsignature(KotlinTypes.kt:275) at dagger.shaded.auto.common.Overrides$ExplicitOverrides.isSubsignature(Overrides.java:183) at dagger.shaded.auto.common.Overrides$ExplicitOverrides.overrides(Overrides.java:109) at dagger.shaded.auto.common.MoreElements.getLocalAndInheritedMethods(MoreElements.java:334) at dagger.shaded.auto.common.MoreElements.getLocalAndInheritedMethods(MoreElements.java:314) at dagger.internal.codegen.ComponentValidator.validate(ComponentValidator.java:165) at dagger.internal.codegen.ComponentProcessingStep.process(ComponentProcessingStep.java:123) at dagger.internal.codegen.ComponentProcessingStep.process(ComponentProcessingStep.java:47) at dagger.shaded.auto.common.BasicAnnotationProcessor.process(BasicAnnotationProcessor.java:329) at dagger.shaded.auto.common.BasicAnnotationProcessor.process(BasicAnnotationProcessor.java:182) at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.doRound(AnnotationProcessingExtension.kt:346) at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.process(AnnotationProcessingExtension.kt:283) at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.doAnnotationProcessing(AnnotationProcessingExtension.kt:269) at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.analysisCompleted(AnnotationProcessingExtension.kt:140) at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(TopDownAnalyzerFacadeForJVM.kt:119) at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegrationWithCustomContext(TopDownAnalyzerFacadeForJVM.kt:66) at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler$analyze$1.analyze(KotlinToJVMBytecodeCompiler.kt:365) at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:126) at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.analyze(KotlinToJVMBytecodeCompiler.kt:358) […]

Gradle构建失败,新的Gradle 3.0.0

我试着用Android Studio的新版本3开始一个新项目。 我得到这个错误消息: 这里是gradle.wrapper.properties distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-milestone-1-all.zip root.gradle buildscript { repositories { maven { url 'https://maven.google.com' } jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.0-alpha1' classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() maven { url […]