Caused by: java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException

 
 
 
Сообщения:12
Есть код:
import org.apache.commons.cli.*;
import java.util.*;
import java.io.*;

class test
{
  public static void main(String[] args)
  {
    Option option = new Option("m", "mode", true, "Set file mode");
    option.setArgs(1);
    option.setArgName("Set file mode ");

    Options posixOptions = new Options();
	posixOptions.addOption(option);

	CommandLineParser cmdLinePosixParser = new PosixParser();
	CommandLine commandLine = null;
	try {
		commandLine = cmdLinePosixParser.parse(posixOptions, args);
	}
	catch(ParseException e) {
		System.out.println(e);
		System.exit(1);
	}
	if( commandLine.getArgs().length == 0 ) {
		System.out.println("Нет ключей");
	}
	if (commandLine.hasOption("m")) {
		String[] arguments = commandLine.getOptionValues("m");
		System.out.println("Mode: "+arguments[0]);
	}

  }

  public static void printHelp(
	final Options options,
	final int printedRowWidth,
	final String header,
	final String footer,
	final int spacesBeforeOption,
	final int spacesBeforeOptionDescription,
	final boolean displayUsage,
	final OutputStream out)
	{
		final String commandLineSyntax = "java test.class";
		final PrintWriter writer = new PrintWriter(out);
		final HelpFormatter helpFormatter = new HelpFormatter();
		helpFormatter.printHelp(
		writer,
		printedRowWidth,
		commandLineSyntax,
		header,
		options,
		spacesBeforeOption,
		spacesBeforeOptionDescription,
		footer,
		displayUsage);
		writer.flush();
	}
}


Компилирую командой
javac -cp commons-cli-1.4.jar test.java

Выдает ошибку
Error: Unable to initialize main class test
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException

В интернете везде пишут что компилировать надо так, и у меня есть только командная строка.
Как же скомпилировать правильно?
 
 
Сообщения:558
Файл как называется?

Я только учусь
Изменен:13 ноя 2017 16:37
 
 
Сообщения:558
https://javatalks.ru/topics/51521

Я только учусь
 
 
Сообщения:12

Джаву знаю хорошо. Если вы не поняли, то проблема вовсе не в знании синтаксиса.
Я не могу скомпилировать программу с бибилотекой jar, если вы понимаете то лучше промолчите.
 
 
Сообщения:12
Tachkin:
Файл как называется?

Естественно как и класс. Как можно не знать таких обыденных вещей? Было б другое название - вообще бы не скомпилировалось
 
 
Сообщения:12
Всё я уже разобрался, надо было распаковать jar-ник поскольку java ищет классы в org/apache/commons/cli/ относительно каталога запуска. Тема закрыта и вопросы пожалуй лучше тут не задавать
Изменен:14 ноя 2017 10:07
 
 
Сообщения:558
linux:
Джаву знаю хорошо

Я уже вижу.
linux:
если вы понимаете то лучше промолчите.

Понимаю, молчу :D

Я только учусь
 
Модераторы:frymock
Сейчас эту тему просматривают:Нет