Я пытаюсь получить доступ к файлу, как это:
public class Main {
private static class RemoteAdapter implements SpellcheckerRemoteAdapter {
private Spellchecker spellchecker;
private String fileName = "deutsch.txt";
File file = new File(getClass().getClassLoader().getResource(fileName).getFile());
private RemoteAdapter() {
this.spellchecker = SpellcheckerFactory.createSpellchecker(file);
}
@Override
public boolean check(String word) {
return this.spellchecker.check(word);
}
@Override
public List < String > getProposal(String word) {
return this.spellchecker.getProposal(word);
}
}
public static void main(String[] args) {
System.out.println("Start Server");
try {
Registry registry = LocateRegistry.createRegistry(1088);
SpellcheckerRemoteAdapter adapter = new RemoteAdapter();
UnicastRemoteObject.exportObject(adapter, 0);
registry.rebind(SpellcheckerRemoteAdapter.NAME, adapter);
} catch (RemoteException re) {
System.out.println(re.getMessage());
}
System.out.println("Server is running!");
}
}
Когда я запускаю свой код внутри затмения, он работает просто отлично.Но если я экспортирую проект как исполняемый файл jar, я получаю следующую ошибку:
java.io.FileNotFoundException: file: \ C: \ Users \ Linsane \ Desktop \ server \ SpellcheckerServer.jar! \deutsch.txt (Неверный синтаксис имени файла, имени каталога или метки тома)
Хотя я знаю, что файл находится в этом месте, и поскольку я сам не строю путь, я недействительно понять, что пошло не так.