java with gradle 项目配置常见问题梳理

1.java.lang.UnsupportedClassVersionError: jdk & jre 版本需一致
 
2.中文编码处理: https://blog.csdn.net/chinassj/article/details/81662277
Editor-file encoding
Build,Execution,Deployment - CommandLineParameter : -encoding utf-8
.idea文件夹中的encodings.xml文件中的编码格式改为uft-8
Server > VM options 设置为 -Dfile.encoding=UTF-8
tasks.withType(JavaCompile) {
    options.encoding = "UTF-8"
}

3.IDEA无法加载gradle:
3.1 检查gradle语法并重启IDEA
3.2 检查gradle路径: > gradle properties
注意检查以下项与实际是否一致: 新建工程为 DemoProject,路径为D:\projects\DemoProject 则—— rootDir: D:\projects\DemoProject projectDir: D:\projects\DemoProject\app buildDir:D:\projects\DemoProject\app\build 4. java.lang.ClassNotFoundException 4.1 gradle application插件默认的源码根目录是src/main/java路径 4.2 如果是单模块应用,src目录放在项目根目录下,则将build.gradle放在根目录下 4.3 如果是多模块应用,src目录放在模块目录下,则将build.gradle放在模块目录 4.4 单模块和多模块都可以通过sourceSets。main.java.srcDirs自定义源码目录,如 main.java.srcDirs = ['src/shit/java'] build.gradle: sourceSets { main.java.srcDirs = ['src/main/java'] } 4.5 IDEA配置与gradle配置是两回事,两套配置文件 5. gradle 加载流程 init.d/xxx.gradle settings.gradle build.gradle 有三个阶段: settings.gradle初始化阶段(initialization phase) build.gradle项目配置阶段(Configure phase) 任务执行阶段 6. can not resolve projectlombok.lombok: 删除缓存重启 dependencies { compileOnly 'org.projectlombok:lombok:1.18.18' // 必须加,否则注解的类IDEA无法找到 annotationProcessor 'org.projectlombok:lombok:1.18.18' } 7.${USER_HOME} init.gradle 全局仓库镜像代理 allprojects{ repositories { def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/repository/public/' def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/repository/jcenter/' def ALIYUN_GOOGLE_URL = 'https://maven.aliyun.com/repository/google/' def ALIYUN_GRADLE_PLUGIN_URL = 'https://maven.aliyun.com/repository/gradle-plugin/' all { ArtifactRepository repo -> if(repo instanceof MavenArtifactRepository){ def url = repo.url.toString() if (url.startsWith('https://repo1.maven.org/maven2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL." remove repo } if (url.startsWith('https://jcenter.bintray.com/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL." remove repo } if (url.startsWith('https://dl.google.com/dl/android/maven2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GOOGLE_URL." remove repo } if (url.startsWith('https://plugins.gradle.org/m2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL." remove repo } } } maven { url ALIYUN_REPOSITORY_URL } maven { url ALIYUN_JCENTER_URL } maven { url ALIYUN_GOOGLE_URL } maven { url ALIYUN_GRADLE_PLUGIN_URL } } }

  

posted @ 2021-04-12 20:34  小天儿  阅读(292)  评论(0)    收藏  举报