Я застрял на этом весь день (после того, как выяснил, что мне пришлось запустить rmiregistry из командной строки), я попытался сделать это локально с помощью Eclipse и, наконец, решил его. Несколько указателей, чтобы спасти других в этой жестокой судьбе:
1 - правильно назначить файл политики, либо с флагом командной строки:
java -Djava.security.policy=/home/.../<filename>.policy ...
или поместив это прямо в ваш код:
System.setProperty("java.security.policy","file:///home/.../<filename>.policy");
Вы также можете поместить его в ту же папку, что и корень проекта), чтобы уменьшить URI до
file:./<filename>.policy
(используйте относительный вместо абсолютного URI - я на самом деле не понял этого до сегодняшнего дня).
2 - убедитесь, что формат файла политики правильный, например ::
grant codeBase "file:<path>/bin/-" {
permission java.security.AllPermission;
};
Это должно относиться к папке, в которой находится ваш бинарный файл! Подробное объяснение формата файла политики: здесь .
Вот и все, я бы также порекомендовал этот урок , мне было очень полезно встать на правильный путь.