Возможны 3 проблемы
- Похоже, вам нужна среда IDE для перекомпиляции кода, чтобы он снова работал и в Eclipse?не знаю, почему это будет на самом деле, если только не используется java-версия ...
eclipse обычно перестраивается при любых изменениях (например, добавляется место в файле)
является вашей IDE затмения иmaven compile использует ту же версию java?
удалите каталог ./target и
добавьте это в maven pom.xml, чтобы убедиться, что вы используете правильную версию java (например, для java1.8):
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
включает файл в сборку jar
Также копия вашего EmployeeView.fxml должна находиться в src / main / resources, и файл не попадет в ваш файл jar, если вы не включите:
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
Этот код не будет работать в файле jar во время выполнения, посмотрите эти ответы:
Как правильно ссылаться на файл ресурса для JAR и отладки? и обновить ваш кодиспользовать getREsourceAsStream, например, вот метод, который я использую:
public void load(String resource, HashSet<String> hashset) {
ClassLoader classloader = Thread.currentThread().getContextClassLoader();
InputStream is_awl = classloader.getResourceAsStream(resource);
BufferedReader reader = new BufferedReader(new InputStreamReader(is_awl));
String line;
try {
while ((line = reader.readLine()) != null) {
hashset.add(line.trim());
}
} catch (IOException e) {
System.err.println("LexicalFeatures can't initialise:"
+ resource + " hashset: "+ e.getMessage());
e.printStackTrace();
}
}