下面的代码中有一个编译错误,我不知道如何修复。
public class Test throws IOException{
public static void main(String[] args) {
String path = "document.txt";
File file = new File(path);
Files.readString(file.toPath()); //cannot find symbol method readString(java.nio.file.Path)
}
}
但我明白
错误:(8,14)java:找不到symbol
symbol:方法readString(java.nio.file.Path)
位置:类java。尼奥。文件文件夹
有很多事情需要注意。
>
java中的readString(Path)
中。尼奥。文件文件
。如果我尝试size(Path)
(java.nio.file.Files中的另一种方法),它可以工作这段代码在intelliJ中不起作用,但在eclipse中起作用
如果我在intelliJ中创建一个新项目,但不在我从github克隆的当前Maven项目中,则此代码有效
我在这里尝试了所有建议,包括:
与Lindstorm和Axel answers一样,这个问题是由于Java版本的错误配置造成的。您可能使用不同于JDK 11的源/目标版本(至少对于Files::readString)构建源代码。我用上述方法解决了这个问题。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
我在maven pluginmaven-compiler-plugin
中添加了配置
部分。如果您没有这部分(例如。您使用Spring boot run),请将其添加到您的pom.xmlplugins
区域。
文件。readString(Path)
是在Java11中引入的。您的安装似乎仍在Java 8上。
首先,通过在project Settings/project下设置正确的SDK和语言级别,确保您的项目使用Java 11。
如果这不起作用,请确保您已经安装了JDK 11版本的IntelliJ。当您单击IntelliJ下载页面上下载按钮右侧的向下小角度时,您可以在IntelliJ下载页面上选择JDK 8和JDK 11版本。
正如Axel的回答所指出的,问题确实与Java版本有关,但这不是SDK或语言级别。
解决这个问题的办法是去归档
请注意,如果此错误一直发生在您身上,这可能是因为您的pom.xml.中未指定源和目标版本有关更多详细信息,请参阅此问题
所以我正在学习Selenium用于Java的测试自动化,我有一个错误消息,比如IntelliJ中的标题“windows()”是红色的。 我试图导入org.openqa.selenium.WebDriver。选项,但它是灰色的,所以没用。 我能做些什么来解决这个问题? 提前谢谢
问题内容: 我正在使用Core Data开发应用程序。当我 使用以下方法创建实例时: 我在日志中收到警告: 我该如何解决? 还有另一个问题,如何在NSManagedObject 子类中定义实例方法? 问题答案: Xcode 7的更新(最终):不再需要在类之前添加模块名称(如Xcode6和Xcode7的早期beta版本一样)。Apple文档“ 实现核心数据托管对象子类”已相应更新。 数据模型检查器现
我正在处理一个scala项目,这是我的规范: 我知道这里已经有人问过这个问题,但提供的解决办法并不奏效,我很绝望,我试过: 但这并不奏效。
我对intellij和Spock很陌生。 我正在使用Gradle将spock测试添加到我的spring boot项目中。以下是我的: 构建直接运行良好。
我完全卸载了IntelliJ,现在已经重新安装并导入了我的项目。我使用gradle导入,可以看到我项目中的所有文件。然而,当我打开一个文件时,我找不到任何声明可以通过执行cmd+click来转到。我已经安装了Java7SDK,我甚至无法在自己的项目中进行类的声明。转到像或这样的Java核心类也不起作用。如何使IDE能够找到我的类? 我在OSX优胜美地,IntelliJ 2016.1.2 build