gpt4 book ai didi

java - 通过终端运行 Java 代码时出现问题

转载 作者:行者123 更新时间:2023-12-01 09:37:14 25 4
gpt4 key购买 nike

我正在尝试制作示例程序来运行 Excel (xlsx) 电子表格并将数据加载到二维数组中。我在 Google 上搜索并找到了一些很好的示例。但我面临的问题是它没有通过终端运行,尽管当我从 eclipse 运行代码时它工作正常。

这里我附上了通过终端运行代码时遇到的错误的屏幕截图:-

enter image description here

我使用的代码是:-

    import java.io.FileInputStream;

import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ExcelDemo {

public static void main(String[] args) {
ExcelDemo xread2 = new ExcelDemo();
}

public ExcelDemo() {
getvalue_1();
}

public static void getvalue_1() {
XSSFRow row;
XSSFCell cell;
String[][] value = null;
double[][] nums = null;

try {
FileInputStream inputStream = new FileInputStream(
"/home/ravi/Desktop/abc/Firebase/sid.xlsx");
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
// get sheet number
int sheetCn = workbook.getNumberOfSheets();
for (int cn = 0; cn < sheetCn; cn++) {
// get 0th sheet data
XSSFSheet sheet = workbook.getSheetAt(cn);
// get number of rows from sheet
int rows = sheet.getPhysicalNumberOfRows();
// get number of cell from row
int cells = sheet.getRow(cn).getPhysicalNumberOfCells();
value = new String[rows][cells];
for (int r = 0; r < rows; r++) {
row = sheet.getRow(r); // bring row
if (row != null) {
for (int c = 0; c < cells; c++) {
cell = row.getCell(c);
nums = new double[rows][cells];
if (cell != null) {
switch (cell.getCellType()) {
case XSSFCell.CELL_TYPE_FORMULA:
value[r][c] = cell.getCellFormula();
break;

case XSSFCell.CELL_TYPE_NUMERIC:
value[r][c] = ""
+ cell.getNumericCellValue();
break;

case XSSFCell.CELL_TYPE_STRING:
value[r][c] = ""
+ cell.getStringCellValue();
break;

case XSSFCell.CELL_TYPE_BLANK:
value[r][c] = "[BLANK]";
break;

case XSSFCell.CELL_TYPE_ERROR:
value[r][c] = "" + cell.getErrorCellValue();
break;
default:
}
System.out.print(value[r][c]);

} else {
System.out.print("[null]\t");
}
} // for(c)
System.out.print("\n");
}
} // for(r)
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

我在这个演示中使用的 jar 如下:-

  1. dom4j.jar
  2. poi-3.9.jar
  3. poi-ooxml-3.5-FINAL.jar
  4. poi-ooxml-schemas-3.7-beta1.jar
  5. xmlbeans-2.6.0.jar

任何帮助将不胜感激,

谢谢。

最佳答案

首先,javac是用于编译的,如果你尝试使用它,你需要指定类路径。我认为这不是你想要的,你想运行它而不是编译它,对吧?从命令行运行它的最简单方法:

使用 eclipse“导出可运行 jar”工具创建“可运行 jar”(在项目上单击鼠标右键 -> 导出 -> java -> 可运行 jar 文件 -> 选择包含要运行的 main() 的正确类, 请选择选项“将所需的 jar 复制到目标 jar 旁边的文件夹中”。然后通过从控制台输入 dest jar 文件夹并调用来运行它:

java -jar yourDestJarName.jar

关于java - 通过终端运行 Java 代码时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38782613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com