我正在尝试使用java 8编译一个项目。
我已经设置了正确的jdk,如图所示:
还更改了目标版本:
但我还是犯了一个错误:compileSdkVersion'android-24'需要JDK 1.8或更高版本才能编译。
我错在哪里?
编辑:我在Ubuntu 12.04上
android {
compileSdkVersion 28
buildToolsVersion = '28.0.3'
defaultConfig {
applicationId "your package name"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
当转到JDK设置时,您可以:
添加“Android应用”模块构建。格拉德尔
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
在gradle中设置sdk路径。属性
org.gradle.java.home=/path_to_java_sdk_8/jdk1.8
也检查一下。idea/模块/编译器。xml与1.7/1.8的对比
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
...
<bytecodeTargetLevel target="1.8">
<module name="app" target="1.7" />
</bytecodeTargetLevel>
</component>
和杂项。xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
....
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7"
default="false" assert-keyword="true"
jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
顺便说一句:如果你想编译againsta java 1.8,你需要阿联酋的“杰克”看到了吗https://source.android.com/source/jack.html
我试图导入的应用程序中的gradle版本与JDK11不兼容,而JDK11正是android studio用作其嵌入式JDK的。我的机器上有JDK8。我已经尝试进入项目结构来更改JDK8位置的路径,但是如果我尝试更改它,就会出现错误。它说我必须选择一个有效的JDK11目录。如何让android studio使用JDK 8?错误截图
我有Java8SDK和运行时,以及一个只使用Java7个功能的项目。我想知道我是否可以设置intellij来构建一个Java-7级的jar,从命令行肯定可以做到这一点? 到目前为止,我已经尝试过简单地将项目语言级别设置为7作为实验,但这显然是不够的,也不是我真正需要的。 我在SO上也看到过这个问题:"Intellij IDEA使用java7编译器编译,当我已经将其配置为使用Java6",但我的项目
我的Android项目设置为使用Maven,所以我从pom.xml文件导入IntelliJ。IntelliJ中的编译器设置正确地指向1.7,但当我尝试编译时我得到: 错误:java:javacTask:源版本1.7要求目标版本1.7 我对maven编译器插件的设置将源和目标都设置为这个,所以这不是问题所在。但是,在模块设置中,我看到我的模块正在使用 Maven Android API 19平台(j
编译 Java 项目 一个项目可以关联多个编译器。 java 项目关联的是 java 编译器。可以通过以下方式来查看项目关联的编译器: 在 Package Explorer 视图中鼠标右击项目并选择 Properties 在左侧的树形菜单中点击 Builders java编译器用于编译java项目。通过点 New 按钮我们可以让java项目关联 Ant builder 编译器。 java 编译器通
This tutorial describes the base compilation commands provided with OCaml. It is useful to learn these commands to understand OCaml's compilation model. However, eventually you will want to use a buil
我使用maven命令来清理、构建整个项目、创建war并部署到服务器。我不能使用Intellij来做这件事,因为我只有社区版。它在与intellij相同的目录中构建项目。 为了加快速度,我编写了一个脚本,可以在本地“target”目录中找到比服务器中更新的已编译文件,并进行复制。虽然一切正常,但问题是Intellij并没有将使用maven编译的类视为应该跳过并重新构建整个项目的类。 目前它的工作原理
编译选项 选项 类型 默认值 描述 --allowJs boolean false 允许编译javascript文件。 --allowSyntheticDefaultImports boolean module === "system"或设置了--esModuleInterop 允许从没有设置默认导出的模块中默认导入。这并不影响代码的输出,仅为了类型检查。 --allowUnreachableCo
问题内容: 我设法使用maven2创建了我的项目结构。但是在使用mvn install编译我的项目时,-source 1.3不支持获取错误泛型 谷歌使用jdk1.5构建我的项目并添加了构建标签 但这是行不通的。 有什么提示吗? 问题答案: 将maven-compiler-plugin添加到您的构建中: