Netbeans: изменить основной класс для генерации JAR, исключая оригинальный основной класс - PullRequest
3 голосов
/ 22 августа 2011

Я пишу библиотеку Java в Netbeans 7, которая содержит основной класс Demo.java, который выполняется при запуске проекта.Теперь я добавил Cli.java, который также является основным классом.Теперь я хотел бы создать файл JAR (что пока не проблема).Этот файл НЕ должен содержать Demo.java, а вместо этого использовать Cli.java в качестве основного класса.

Когда я добавляю «Main-Class: packagename.Cli» в manifest.mf и собираю проект,«Main-Class» перезаписывается на «packagename.Demo», хотя я исключил этот класс из свойств проекта.

Так что я предполагаю, что это работает только при изменении build.xml (который даже лучше, чемфайл находится в системе контроля версий).Но я не узнал, как это сделать.Может ли кто-нибудь привести меня к простому объяснению или даже предоставить несколько строк XML для этого?Большое спасибо.

Ответы [ 3 ]

2 голосов
/ 23 августа 2011

Кажется, пока работает следующее:

<!--  Sets the Cli as new main class  -->
<manifest file="build/MANIFEST.MF">
    <attribute name="Main-Class" value="packagename.Cli" />
</manifest>

<!--  exludes the demo for the jar creation  -->
<property name="excludes" value="**/packagename/of/demo/**"/>
2 голосов
/ 22 августа 2011

Щелкните правой кнопкой мыши свой проект на панели Проекты . В Run измените Main Class (есть кнопка Browse ... , чтобы облегчить боль). Сохраните ваши изменения и Очистите и постройте . Это должно сделать.

0 голосов
/ 12 июля 2015

Удалите основной класс, затем создайте новый класс Java, который будет основным классом, как только вы создадите свою программу. тебе нравится WTH ?? !! файл jar не открывается !!! хорошо распакуйте файл jar и откройте META -INF (IDK, если я правильно написала). и откройте единственный файл с Windows = Блокнот Mac = textEdit изменить основной класс: DEAFULTNAME.PROJECTNAME на основной класс: thenameyouput.projectname

и это работает! НЕТ ДОПОЛНИТЕЛЬНОГО КОДА

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...