Android Studio运行Java/Kotlin Ap

前言

在Android开发中,有时候需要快速验证与Android无关的纯Java/Kotlin代码,这个时候可能会选择直接在Android工程中某个类中写个测试代码,然后Gradle编译,运行看结果。或者是直接开启IntelliJ 直接开撸。我更习惯于在Android工程中添加个测试的module,然后编写。最近使用Android Studio Hedgehog | 2023.1.1 + Kotlin 1.9.22 按照以前的方式,发现了编译问题,费了点时间解决。

本篇文章,你可以get到什么?

Android Studio中运行纯Java/Kotlin代码

解决编译错误

Android Studio运行Application/Kotlin

  1. Android Studio -> File -> New -> New Module

image.png

  1. Java/Kotlin Library

以我创建的purekotlin 模块为例,该模块会自动生成,以及项目级别的settings build文件会有变化。

1
2
3
java复制代码===> settings.gradle.kts

include(":purekotlin")
1
2
3
4
5
6
7
8
9
10
11
bash复制代码===> purekotlin module -> build.gradle.kts

plugins {
id("java-library")
id("org.jetbrains.kotlin.jvm")
}

java {
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
}

增加启动配置

添加Java/Kotlin文件后,写个Hello World, 需要更改Configuration, 默认是app

image.png

image.png

Application对应Java程序, Kotlin对应Kotlin程序。

Kotlin 运行配置

image.png

Java 运行配置

image.png

Java的Application配置跟Kotlin稍微有差异。

编译错误

按照上面的配置,写好简单的hello world,发现无法编译,提示:

Execution failed for task ‘:purekotlin:compileKotlin’.
Inconsistent JVM-target compatibility detected for tasks ‘compileJava’ (1.7) and ‘compileKotlin’ (17).

解决编译问题

直接把新建module下的

1
2
3
4
5
6
7
8
9
10
11
12
java复制代码===> purekotlin module -> build.gradle.kts

plugins {
id("java-library")
id("org.jetbrains.kotlin.jvm")
}

// ==============删除 或者 注释=================
java {
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
}

git ignore

若是经常去添加,删除这个测试module, 会很累赘, 有时候还不小心把该测试module git add了,编辑.gitignore文件在其中加入 /purekotlin 这样,该文件就会被git忽略。 记得测试完,恢复

1
2
3
java复制代码===> settings.gradle.kts

include(":purekotlin")

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%