В исходном коде используйте следующую конструкцию:
package com.foo.package;
public class Example {
public void loadResourceExample) {
Example.class.getResource("/cde/FGH/SomeRandomFile.xml");
Example.class.getResource("relative/example.xml");
}
}
Первая строка загрузит ресурс "/cde/FGH/SomeRandomFile.xml" из любой папки или jar, упомянутых в classpath, поэтому вНапример, в вашей командной строке будет сканироваться D:\WorkSpace\Testspace\MyProject\target\classes\cde\FGH\SomeRandomFile.xml
.
Во второй строке учитывается имя пакета вашего класса, поэтому, например, будет проверено значение /com/foo/package/relative/example.xml
на D:\WorkSpace\Testspace\myProject\dependency\somedep.jar
.
Обратите внимание, что синтаксис * в параметре -cp будет принимать каждый JAR внутри указанной папки и включать его в путь к классам.Это все, что он делает.
Если вы не используете getResource
, вы зависите от «текущего рабочего каталога», который может быть чем угодно, и параметр -cp не будет иметь никакого эффекта.