IntelliJ迁移项目的主要错误:线程“ Timer-0”中的异常

时间:2019-12-30 02:19:38

标签: java gradle kotlin intellij-idea jar

概述

在运行Main方法并构建 .jar 文件时,尝试将Kotlin AppEngine项目从旧的MacBook Pro(MBP)迁移到新的MBP时出现问题。本地。

IntelliJ中的Main方法在新的MBP上间歇性失败。旧的 .jar 在新的MBP上按预期运行,而新的 .jar 在旧的MBP上按预期运行。

期望

  1. 在旧MBP上从Kotlin项目运行现有的本地 .jar 文件。
  2. 将Kotlin项目从GitHub存储库克隆到新MBP上的本地IntelliJ项目中。
  3. 在新的MBP上构建 .jar
  4. 在新的MBP上运行 .jar
  5. 在Google AppEngine实例上托管 .jar

已观察

  1. 在现有MBP上运行 .jar 可以正常工作。
  2. 在本地克隆GitHub存储库后,使用相同代码运行main方法会在新MBP上间歇运行。

错误

Main方法可以按预期在旧MBP上运行,但不能在新MBP上运行,并出现以下错误。

  

线程“ Timer-0”中的异常com.google.cloud.storage.StorageException:401未经授权       在com.google.cloud.storage.spi.v1.HttpStorageRpc.translate(HttpStorageRpc.java:229)       在com.google.cloud.storage.spi.v1.HttpStorageRpc.create(HttpStorageRpc.java:310)       在com.google.cloud.storage.StorageImpl $ 3.call(StorageImpl.java:196)       在com.google.cloud.storage.StorageImpl $ 3.call(StorageImpl.java:193)       位于com.google.api.gax.retrying.DirectRetryingExecutor.submit(DirectRetryingExecutor.java:105)       在com.google.cloud.RetryHelper.run(RetryHelper.java:76)       在com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:50)       在com.google.cloud.storage.StorageImpl.internalCreate(StorageImpl.java:192)       在com.google.cloud.storage.StorageImpl.create(StorageImpl.java:154)       at content.SaveContentKt.saveContent(SaveContent.kt:38)       在content.ContentTasks.generateContent(ContentTasks.kt:55)       在content.ContentTasks.run(ContentTasks.kt:41)       在java.base / java.util.TimerThread.mainLoop(Timer.java:556)       在java.base / java.util.TimerThread.run(Timer.java:506)   造成原因:com.google.api.client.googleapis.json.GoogleJsonResponseException:401未经授权       在com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:150)       com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)       com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)       com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:554)       com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:474)       com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:591)       在com.google.cloud.storage.spi.v1.HttpStorageRpc.create(HttpStorageRpc.java:307)       ...还有12个

配置

gradle-wrapper.properties Gradle ,IntelliJ首选项 Gradle JVM ,项目 SDK ,运行/调试两台计算机上的配置 JRE 和Project 语言级别版本相同。

首选项> 等级

  • 使用Gradle来自: 'gradle-wrapper.properties' file

  • Gradle JVM: Library/Java/JavaVirtualMachines/12.0.1

文件> 项目结构... > 项目

  • Project SDK: 12.0.1
  • 项目语言级别: 11

运行.jar文件项目结构> 项目设置> 工件> 添加> JAR > 来自具有依赖项的模块...

  • 模块: coinverse-media.main
  • 主类: Initialization

最后,构建工件并运行 .jar 文件。

build.gradle

buildscript {
    ext.kotlin_version = '1.3.61'

    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

plugins {
    id 'java'
    id 'org.jetbrains.kotlin.jvm' version '1.2.51'
}

version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
    implementation 'com.squareup.retrofit2:retrofit:2.7.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.7.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava:2.7.0'
    implementation 'com.google.firebase:firebase-admin:6.12.0'
    implementation 'com.google.cloud:google-cloud-storage:1.102.0'
    implementation 'com.google.apis:google-api-services-youtube:v3-rev20190827-1.30.1'
}

compileKotlin {
    kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
    kotlinOptions.jvmTarget = "1.8"
}

尝试的解决方案

  1. 使缓存无效/重新启动... :这似乎可以通过运行Main方法多次解决此问题,然后错误继续显示。
  2. ./gradlew clean build
  3. 更新到最新的Gradle version
  4. 确保现有的MBP和新的MBP在相同的IntelliJ,Project和Run配置上运行。
  5. 可能相关的构建依赖项冲突问题:Guava Dependency Breaking Jar Built With Kotlin

构建数据

  

6:09:42 PM:正在执行任务“汇编” ...

     

任务:compileKotlin更新

     

任务:compileJava NO-SOURCE

     

任务:processResources NO-SOURCE

     

任务:分类为最新

     

任务:inspectClassesForKotlinIC截止日期

     

任务:JAR UP-TO-DATE

     

任务:组装至最新日期

     

75毫秒内成功建立   3个可执行的任务:3个最新任务   6:09:42 PM:任务执行完成了“汇编”。

  • 隐藏文件 enter image description here

0 个答案:

没有答案