这是我编写的一个简单的java代码,我想使用opencsv模块解析我的csv文件:
import com.opencsv.CSVReader;
import java.io.FileReader;
import java.io.IOException;
public class csv_open {
public static void main(String[] args) {
String csvFile = "FebStatement.csv";
CSVReader reader = null;
try {
reader = new CSVReader(new FileReader(csvFile));
String[] line;
while ((line = reader.readNext()) != null) {
System.out.println("Expense [date= " + line[0] + ", amount= " + line[1] + " , name=" + line[2] + "]");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在我有csv_open.java文件的目录中,我也有opencsv-4.1.jar文件。 我用来在命令行上编译代码的命令是:
javac -classpath opencsv-4.1.jar: csv_open.java
但那给了我以下输出: package com.opencsv does not exist - pls see image
我现在不使用IntelliJ或Eclipse,或者使用Maven或Groovy等构建这个程序。 我是否仍然可以通过修复错误来简单地在命令行上编译和运行代码?
非常感谢任何帮助!
提前致谢!
答案 0 :(得分:0)
我在编译com.opencsv.CSVWriter时遇到类似的问题。我最终使用下面的代码在命令行中进行了编译,并且成功了!我仍在学习如何设置类路径,而不是那样,所以可能有一种更简单的方法,但这对我有用。
javac -classpath C:\ project \ lib \ opencsv-4.2.jar -d C:\ project \ bin \ -sourcepath C:\ project \ src \ PrepForCPP.java
编译代码明细:
javac = jvm compiler
-classpath = full path of where the jar file is stored
-d = where the various class files for my program are stored
-sourcepath = where all of the different java files for my program are stored
C:\project\src\ = setting the filepath
PrepForCPP.java = file name with main method
您可能不需要-d和-sourcepath,因为看起来您仅使用一个文件。如果我正确理解了我在类路径上找到的信息,则环境变量设置不正确,因此jvm无法找到opencsv-4.2.jar。我不认为我也做过,但是目前包括完整的文件路径似乎是一个不错的解决方法。
**这确实需要设置classpath环境变量。否则,您可以包括javac的完整文件路径。