Ошибка: java.lang.ClassNotFoundException: org.jdom2.Document ---- синтаксический анализ Java на терминале - PullRequest
0 голосов
/ 28 сентября 2018

Я работаю с Java и пытаюсь разобрать XML-документ.Код работает в Eclipse, но когда я пытаюсь запустить его на терминале, я получаю эту ошибку.java.lang.ClassNotFoundException: org.jdom2.Document Я использую org.jdom2.Document в качестве типа данных, который может быть проблемой.Я не знаю, что можно использовать вместо этого.

public class ReadXMLFile 
{

  public static org.jdom2.Document Read() 
  {

      String fileName = "test_file.xml";
      org.jdom2.Document jdomDoc = new org.jdom2.Document();
      try 
      {

        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(new File(fileName));
        DOMBuilder domBuilder = new DOMBuilder();
        jdomDoc = domBuilder.build(doc);
    } 
    catch (Exception e) 
    {

    }

    return jdomDoc;
  }
}

Мой пример кода.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Ваш код терпит неудачу, потому что JDOM2 не находится на пути к классам, когда вы выполняете свой код.

Некоторые люди предлагают Maven в качестве решения этой проблемы.Тебе не нужен Maven.Maven полезен, потому что он облегчает управление вашими зависимостями, но это еще один уровень технологии для изучения.Все, что вам действительно нужно, это убедиться, что библиотека JDOM2 находится в пути к классам.

Вы помещаете JDOM2 в путь к классам, когда вы компилируете с использованием javac, вы также должны поместить его в путь к классам при запуске с использованием java, сноваиспользуя

java -cp XXX/jdom-2.0.6.jar myclass
0 голосов
/ 28 сентября 2018

ClassNotFoundException - исключение времени выполнения, которое выдается, когда приложение пытается загрузить класс во время выполнения, используя методы Class.forName () или loadClass () или findSystemClass (), и класс с указанным именем не найденв classpath.

Вы включаете в classpath?какую команду вы используете для создания своего jar-файла?

Вы можете создать свое java-приложение, включая зависимости, такие как:

<build>
    <plugins>
      <!-- any other plugins -->
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
        </configuration>
      </plugin>
    </plugins>
  </build>

другие предложения о том, как включить ваши зависимости, вы можете найти здесь .

С наилучшими пожеланиями,

...