2013-09-17 3 views
0

У меня есть Java класс, который является исполняемым:запустить класс Java из текущей папки

java my.package.Test 

Test.class находится в папке ./my/package

Вопрос в том, как я могу запустить этот класс, если он находится в текущей папке (нет ./my/package существует)

благодаря

+0

java Test -> это должно сделать – Gianmarco

+0

java abc.Test или java Test не сделает это, а также -cp; Это связано с тем, что папка abc не существует. Я могу сделать это с помощью пользовательского загрузчика классов: запустите класс A и запустите Test, но посмотрите, существует ли более простой способ. tnx –

+0

@Gianmarco что неверно –

ответ

2

Скажите ваш класс в

package my.pack; // package is not an acceptable word in the package path 

тогда вы должны предоставить полное имя класса (с пакетом путем), чтобы запустить его, и что путь должен существовать в файловой системе (или в исполняемой банке).


Вопрос в том, как я могу запустить этот класс, если он находится в текущей папке (не ./my/package не существует)

Вы не можете, если класс объявлен как в этом пакете.

+0

спасибо, что я думал - просто прошу в случае, если я пропущу что-то –

+1

Этот ответ неверный. Очевидно, вы можете запустить класс в текущем каталоге, если он находится в правильной структуре каталогов с аргументом '-classpath' (или' -cp'). –

+0

@MiserableVariable Вопрос указан _no ./my/package exists_. Если у вас есть класс, объявленный как находящийся в этом пакете, вам нужна эта структура каталогов для его выполнения. –

Смежные вопросы