问题描述
我有一段代码可以在 Eclipse 中使用 Java 11 编译正常。
我正在学习 maven,我正在尝试将我现有的项目转换为使用 maven 进行编译。
我的代码不使用 java.sql.ResultSetMetaData 但 maven 抱怨
const matched = useRouteMatch("/projects");
return (
<Route path={"/"} render={() => (!matched ? <YourComponent /> : null)} />);
来自 CSVUtils.java 的方法:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project unavagam: Compilation failure
[ERROR] /D:/GitRepos/Unavagam/unavagam/src/main/java/com/som/unavagam/csv/CsvUtils.java:[23,80] cannot access java.sql.ResultSetMetaData
[ERROR] class file for java.sql.ResultSetMetaData not found
不过
当我将以下内容添加到 module-info.java 时,编译问题就消失了
public static void writeCSVFile(String fileName,List<CsvBean> data) throws Exception {
if (data != null && !data.isEmpty()) {
String[] headers = data.get(0).getHeader();
CSVFormat format = CSVFormat.DEFAULT.withDelimiter(',').withHeader(headers);
try (FileWriter fw = new FileWriter(new File(fileName));
BufferedWriter bw = new BufferedWriter(fw);
CSVPrinter printer = new CSVPrinter(bw,format);) {
List<String> dat = new ArrayList<>(headers.length);
for(CsvBean bean:data) {
dat.clear();
bean.populateCSVOrderedList(dat);
printer.printRecord(dat);
}
printer.flush();
}
}
}
如果没有上面这行代码,eclipse 可以毫无问题地编译代码。
请帮助我理解。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)