从jar文件运行类

时间:2016-03-04 10:23:33

标签: java jar opencsv

我将opencsv jar添加到了我的类路径中 classpath

我的代码如下:

import java.io.File;
import java.io.FileReader;
import java.io.FileOutputStream;

import com.opencsv.CSVReader;
import org.apache.poi.xwpf.usermodel.XWPFDocument;

import java.util.Scanner;

public class CreateDocument
{
    public static void main(String[] args)throws Exception
    {
        CSVReader reader = new CSVReader(new FileReader("invoicedetails.csv"));
        String [] nextLine;
        while ((nextLine = reader.readNext()) != null) {
            // nextLine[] is an array of values from the line
            System.out.println(nextLine[0] + nextLine[1] + nextLine[2]);
        }
    }
}

现在当我尝试从命令行运行jar时出现问题,我通过单击build创建jar - >构建工件 我在我的命令行中收到以下消息: commandline

为了更加清晰,这是我的解决方案在IntelliJ中的样子: intellij solution

2 个答案:

答案 0 :(得分:0)

jar文件只包含您在IDE项目中编码的类。您需要在java命令中指定包含所有依赖项的类路径。

java -classpath =" PATH_TO_OPENCSV" -jar InvoiceBuilder.jar

答案 1 :(得分:0)

正如其他人指出的那样,你错过了创建的jar中的依赖项。你可以创造一个"胖"罐子里的想法。见this blog post。帖子很旧但也应该适用于新版本。