【发布时间】:2021-01-12 14:42:34
【问题描述】:
尝试编写一个简单的应用程序来读取文件并打印出文件的内容。我读到 Java 11 有 Java.io.file 库,所以我使用了它。我在本地创建了一个 .txt 文件。
我的主课是这样的:
package com.iz.backend;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;
import javax.swing.text.AbstractDocument.Content;
@SpringBootApplication
public class BackendApplication {
public static void main(String[] args) {
SpringApplication.run(BackendApplication.class, args);
Path filePath = Paths.get("/Users/iz/Proj/backend/src/testFile.txt");
try
{
String content = Files.readString(filePath);
System.out.println(content);
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
运行时
mvn clean install
编译和构建一个jar文件,我得到一个编译错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project backend: Compilation failure
[ERROR] /home/proj/backend/src/main/java/com/iz/backend/BackendApplication.java:[26,34] error: cannot find symbol
[ERROR]
[ERROR] -> [Help 1]
【问题讨论】:
-
您的 maven 是否配置为使用正确的 Java 版本?您可以通过
mvn --version查询。另外,您的 readString 看起来不是在第 26 行,还是我错了? -
我使用的是 Apache Maven 3.6.3,在 pom 文件中我定义了 Java 11
-
您从哪里执行全新安装?
-
您的 pom.xml 指定 java 11 的事实并不意味着它将使用 java 11。如果您尚未安装 java 11 或您的 java home 指向旧版本,maven 将使用它.
-
javac -version会为您返回什么?
标签: java spring-boot maven file bufferedreader