создание исполняемого фляги в netbeans

<p>я использую netbeans 6.5 и по какой-то причине он не будет производить исполняемый файл "из коробки".</p><p>я установил свой проект в качестве основного проекта, определил главный класс в меню «выполнить» свойств проекта, и он работает безупречно, когда я нажимаю клавишу f6, чтобы запустить его.</p><p>я посмотрел на файл манифеста, и он действительно не определял основной класс, а также опустил зависимости библиотеки.</p><p><br><br><b> я что-то пропустил? есть ли способ (кроме изменения файла манифеста вручную) создавать исполняемые файлы jar? </b> <br><br></p><p>правка: да, я попытался очистить и перестроить, и это произвело банку в папке dist, все еще с тем же manifest.mf</p><pre><code>manifest-version: 1.0 ant-version: apache ant 1.7.1 created-by: 10.0-b23 (sun microsystems inc.) </code></pre>

<p>у меня была такая же проблема в netbeans 7.2.1 с проектом приложения java maven. измените файл pom.xml, добавив в него плагин <a href="http://maven.apache.org/plugins/maven-assembly-plugin/usage.html">maven assembly</a> с одним твиком к ответу myrho (необходимо указать предопределенный дескриптор "jar-with-dependencies"):</p><pre><code><plugin> <artifactid>maven-assembly-plugin</artifactid> <version>2.4</version> <configuration> <descriptorrefs> <descriptorref>jar-with-dependencies</descriptorref> </descriptorrefs> <archive> <manifest> <mainclass>your.app.mainclass</mainclass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </code></pre><p>альтернативный метод заключается в создании проекта приложения java в netbeans, в котором не используется maven. выберите «файл» -> «свойства проекта» -> «сборка» -> «упаковка» и установите флажок «копировать зависимые библиотеки». </p>

<p>если вы используете подключаемый модуль maven assembly и хотите создать исполняемый файл jar с зависимостями, вам нужно добавить эту часть в конфигурацию раздела maven-assembly-plugin в вашем файле pom.xml:</p><pre><code><plugin> <artifactid>maven-assembly-plugin</artifactid> <configuration> <!-- ... --> <archive> <manifest> <mainclass>your.app.sampleclass</mainclass> </manifest> </archive> </configuration> </plugin> </code></pre><p>источник: <a href="https://maven.apache.org/plugins/maven-assembly-plugin/usage.html">использование плагина maven assembly</a> </p>

<p>попробуй это:</p><ol> <li><p>щелкните правой кнопкой мыши свой проект на панели «проекты», выберите «свойства»</p></li> <li><p>нажмите «выполнить» в новом окне.</p></li> <li><p>отредактируйте поле «основной класс:» (нажмите на обзор).</p></li> </ol><p>таким образом, вы выберете основной класс, который является точкой входа в ваше приложение, и манифест будет создан правильно.</p>

<p>очень просто, файлы .jar и .jad находятся в папке <code>dist</code></p><p>я также искал ответ и получил его от <a href="http://forums.netbeans.org/ptopic3465.html">http://forums.netbeans.org/ptopic3465.html</a> </p><p>решено :)</p>

<p>вы очистили проект и восстановили? похоже, вы делаете это правильно. вот некоторые ссылки на всякий случай:</p><p> <a href="http://www.velocityreviews.com/forums/t141385-how-to-create-executable-jar-in-netbeans-ide.html">http://www.velocityreviews.com/forums/t141385-how-to-create-executable-jar-in-netbeans-ide.html</a> <a href="http://dr.berkeley.edu/rem/wiki/index.php/making\_a\_java\_executable\_jar\_in\_netbeans">http://dr.berkeley.edu/ rem/wiki/index.php/making\_a\_java\_executable\_jar\_in\_netbeans</a> </p>

<p>может быть, вы создали<em> java-проект с существующими источниками </em>вместо<em> java-приложения </em>? </p><p>у меня была похожая проблема, и создание нового java-приложения, а затем ручное копирование файлов src решило проблему - все работало «из коробки».</p>

<p>у меня был опыт, что процесс сборки отличается, в зависимости от типа проекта.</p><p>я полагаю, вы создали проект "библиотека классов java".</p><p>так что просто создайте проект «java application», а затем объедините все классы с ним.</p><p>затем netbeans<strong> не переопределит, а улучшит </strong><code>"manifest.mf"</code> в jar.</p><p><em>конечно, это глупая ошибка netbeans. конечно, после этого можно добавить основные классы </em></p><p><strong> правка: </strong>пожалуйста, смотрите мой другой ответ. это легче.</p>

<p>если вы очистите и соберете свой проект, он должен создать jar в каталоге dist.</p><p>он должен создать manifest.mf на верхнем уровне каталога вашего проекта.</p>

<p>я действительно наткнулся на эту страницу после того, как столкнулся с той же проблемой, я отредактировал файл manifest.mf, но изменения не были обнаружены в файле jar manifest.mf. я нашел проблему, с которой столкнулся, и подумал, что передам информацию на всякий случай.</p><p>что я делал неправильно, так это то, что у меня не было проекта, над которым я работал, в качестве основного проекта, поэтому, когда я редактировал правильный манифест, я компилировал неправильный проект. </p><p>итак, я полагаю, что краткую историю вы проверили и убедились, что вы выбрали правильный проект для файла manifest.mf, который вы редактируете?</p>

<p>принудительное принудительное создание<strong> пакета </strong>с помощью netbeans ide 8.0.2 ...</p><ol> <li>в навигаторе проектов разверните <<em>project</em>> и щелкните правой кнопкой мыши файлы проекта/pom.xml.</li> <li>нажмите run maven/цели</li> <li>введите «пакет» в поле «цели»</li> <li>нажмите ок</li> </ol><p>окно вывода покажет (на mac) ...</p><pre><code>building jar: /users/<username>/netbeansprojects/<project>/target/<project>-1.0-snapshot.jar </code></pre>

<p>перейдите в представление «файлы». создайте файл manifest.mf в корневом каталоге.</p><pre><code>/project\_folder build.xml manifest.mf(edit here) /dist /src /test /build </code></pre>

<p>интересная информация может быть здесь:</p><p> <a href="http://wiki.netbeans.org/faqnomainclass">http://wiki.netbeans.org/faqnomainclass</a> </p>

<p>лучшее решение:</p><p>отредактируйте nbproject/project.properties и<strong> добавьте запись </strong>:</p><pre><code>manifest.file=manifest.mf </code></pre><p><code>manifest.mf</code> должен находиться в корне проекта и содержать только:</p><pre><code>manifest-version: 1.0 x-comment: main-class will be added automatically by build </code></pre><p>работает. проверено.</p>

<p>хорошо, с neatbean вы можете сделать следующие шаги: 1. щелкните правой кнопкой мыши<strong> название проекта </strong>выберите элемент<strong> установить конфигурацию </strong>и выберите<strong> настроить </strong><br/> 2. выберите<strong> выполнить </strong>и заметить<strong> главный класс </strong><br/> 3. выберите<strong> обзор </strong>и установите класс, если вы хотите запустить. после того, как вы нажмете ок.<br/> 4. конец.<br/></p>

<p>в 7.3 просто включите свойства/сборка/пакет/копирование зависимых библиотек, и основной класс (в зависимости от выбранной цели) будет добавлен в манифест при сборке.</p>

<p>другой подход полностью заключается в разработке, запуске модульных тестов и т.д. в netbeans, но затем с использованием сценария maven или ant для создания «реальной» сборки. кажется, что эти виды инструментов сборки дают вам больше контроля над тем, как все строится, а также позволяют автоматизировать сборки.</p><p>для maven вы можете легко добавить записи в манифест, используя плагин maven jar:</p><p> <a href="http://maven.apache.org/plugins/maven-jar-plugin/">http://maven.apache.org/plugins/maven-jar-plugin/</a> </p>

<p>странно, действительно, это должно быть сделано из коробки, включая путь к классам. </p><p>вы обновились с предыдущей версии? при обновлении nb обновит файлы проекта, но иногда такая миграция не выполняется должным образом, и появляется сценарий такого рода. просто закройте проект, переименуйте каталог nbproject в nbproject\_old и выполните новый проект -> проект java с существующими источниками. снова установите основной класс, добавьте зависимости и попробуйте снова.</p>