Команда ожидает, что вы включите любые пути в classpath
без пробелов. Пробел означает, что аргументы для classpath
закончились. Если в одном из ваших путей есть пробел, вы можете включить двойные кавычки:
java -cp path1:path2:path3 classname argument
java -cp "path1:path2:path3" classname argument
Если путь начинается с /
, это полный путь. Если нет, то это относительно того, где вы выполняете свою команду. classname
должно быть именем класса, а не файла, что означает отсутствие .class
. Если в вашем class
указан любой package
, то classname
также должен содержать имя package
, и путь к root из package
, а не class
.
Убедитесь, что у вашего пользователя есть надлежащий доступ к файлам, затем попробуйте:
java -cp /path/incubator-dubbo/dubbo-cluster:/usr/share/java/junit4-4.12.jar:/pathClassRunner/src/com/company Runner org.apache.dubbo.rpc.cluster.StickyTest#testHeartbeat
Я предполагаю, что ваш Runner
находится в пакете по умолчанию. В случае, если он находится в пакете com.company, вам нужно запустить его вместо этого:
java -cp /path/incubator-dubbo/dubbo-cluster:/usr/share/java/junit4-4.12.jar:/pathClassRunner/src com.company.Runner org.apache.dubbo.rpc.cluster.StickyTest#testHeartbeat
Другое предположение состоит в том, что ваш Runner.class
находится в вашем каталоге /pathClassRunner/src...
.