Как создать
XML
файл без внешних библиотек в Java 9?
В настоящее время для этого я использую классы javax.xml.bind.JAXBContext
и javax.xml.bind.Marshaller
, но в Java 9 этих классов больше не существует. Поэтому при использовании Java 9 я получаю исключение: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBContext
.
Я могу создать файл XML
с более ранней версией Java, но мне нужно, чтобы он был совместим и для Java 9.
Сейчас я создаю файл XML:
1. Создать класс элементов XML
@XmlRootElement
public class Places {
private List<Athlete> athletes;
public List<Athlete> getAthletes() {
return athletes;
}
@XmlElement
public void setAthletes(List<Athlete> athletes) {
this.athletes = athletes;
}
}
2. Создать файл XML
List<Athlete> athletes = new ArrayList<>();
Places places = new Places();
places.setAthletes(athletes);
JAXBContext context = JAXBContext.newInstance(Places.class);
Marshaller marshaller = context.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(places, new File(outputPath);
marshaller.marshal(places, System.out);
Надеюсь, кто-то уже сталкивался с этой проблемой и знает, как ее решить.
PS: Я искал ответ на этот вопрос, но ничего не нашел, так что это не должен быть повторяющийся вопрос. >Для этого мне нужно использовать только внутренние библиотеки Java.
Для этого я должен использовать только внутренние библиотеки Java. - почему?
Вы читали документацию по API? docs.oracle.com/javase/9/docs/api/java.xml-summary.html
@lexicore Из-за задачи, которую компания дала мне, я подаю заявку на работу