当前位置: 首页 > 知识库问答 >
问题:

Gradle Kotlin DSL找不到java.io包

公羊宇定
2023-03-14

我正在尝试将 Android 应用程序的 build.gradle 文件转换为 Kotlin DSL。此文件具有如下函数:

def getLastCommitHash() {
    def stdout = new ByteArrayOutputStream()
    exec {
        commandLine 'git', 'rev-parse', '--short', 'HEAD'
        standardOutput = stdout
    }
    return stdout.toString().trim()
}

我将其转换为:

fun getLastCommitHash() {
    val stdout = ByteArrayOutputStream()
    exec {
        commandLine("git", "rev-parse", "--short", "HEAD")
        standardOutput = stdout
    }
    return stdout.toString().trim()
}

我得到一个未解析的引用:ByteArrayOutputStream错误,并应用将其更改为的导入java.io.ByteArrayOutputStream()显示一个未解析的引用:io错误。

我做错了什么吗?提前感谢。

共有3个答案

盛琪
2023-03-14

我的观察:

    < li >关闭项目 < li >删除<代码>。想法 和<代码>。分级文件夹 < li >通过选择root-< code > build . gradle . kts 并选择“作为项目打开”来打开项目

确实有帮助。

秦跃
2023-03-14

从<code>java导入。io在插件块之前执行时工作。我可以使用以下build.Gradle.kts成功运行Gradle 7.3.2和6.9.2的版本:

import java.io.ByteArrayOutputStream

plugins {
    `java-library`
}

println(ByteArrayOutputStream::class)

如果您对完整的包名进行转义,那么您也可以在不导入类的情况下使其工作(如上所述进行测试):

kotlin prettyprint-override">plugins {
    `java-library`
}

println(`java.security`.MessageDigest::class)
吕衡
2023-03-14

我在intellij idea的后端项目中遇到了这个问题,我在build.gradle文件的顶部添加了这个导入:

import java.io.ByteArrayOutputStream

现在它起作用了。

 类似资料:
  • 我有一个名为""的文件。 它与我的< code>java文件在同一个目录中。 但是,当我尝试在以下代码中访问它时,会发生此文件未找到错误: 这是我的代码:

  • Java.io 包通过数据流,序列化和文件系统提供系统输入和输出的类。 本参考资料将向您介绍 java.io 包中提供的简单实用的方法。

  • 我的java编译器找不到包。考虑: 使用编译 给出 我使用的是Ubuntu 12.04,我想我已经安装了JDK 7(参见:package java.nio.file不存在)

  • 我是一名学习使用jsp和Servlet构建Web应用程序的学生。一个月以来,我的Web应用程序项目一直运行良好,但今天它的行为突然变得奇怪了。当我提交jsp页面时,它无法找到我的servlet。我已经使用servlet注释来映射请求。 以下是我的JSP:- 以下是我的servlet:- 以下是我的控制台日志:-

  • 问题内容: 我正在运行Windows 8,但无法使javac正常工作。 我已将环境变量中的PATH设置为 我尝试过是否使用’;’ 但无济于事。 我最近在桌面上添加了这个问题;工作,但不是这种情况。 我确保javac确实也存在于bin中。 关于修复的任何建议将不胜感激。 编辑echo%PATH%给出: 确切的错误是:无法将“ javac”识别为内部或外部命令,可操作程序或批处理文件。 问题答案: 至

  • 问题内容: 我正在为我的项目使用jersey,并尝试从字符串中解析URI。 代码很简单,但是下面出现错误 看来程序找不到委托。我已经导入了,并且应该在我的构建路径中包含委托。但我仍然会收到此错误。 有人知道如何解决吗?谢谢! 问题答案: 如果您使用的是Maven,请使用以下依赖项: 对于Gradle,以下将起作用: