2009-06-23 2 views
2

Какова наилучшая практика создания файла .jar из проекта java?Какова наилучшая практика создания файла .jar из проекта java?

+0

Вы имеете в виду лучший способ создать банку или когда/почему вы должны создать банку? –

+0

Создание файла .jar просто упаковывает ваши классы и любые файлы ресурсов, которые могут потребоваться в один архив. Что именно вы ищете? – aberrant80

ответ

2

Eclipse IDE - лучший способ для новых посетителей. Просто выберите проект правой кнопкой мыши файл экспорта, выберите jar anf filename.

+2

Если вы еще не достаточно хорошо знакомы с Eclipse, чтобы создать банку, это довольно сложный интерфейс, как указано в разделе «Худший пользовательский интерфейс»: http://stackoverflow.com/questions/238177/worst-ui-youve-ever -used/568142 # 568142 – Chadwick

+4

Использование GUI - это худшая практика для создания файла .jar. Это не сценарий, который можно повторить другими, и у вас мало контроля над содержимым. –

10

Некоторые моменты, рассмотреть следующие вопросы:

  • Создание надлежащего MANIFEST.MF, который должен содержать: дату
    • сборки;
    • Автор;
    • Реализация-версия;
  • Используйте сценарий/программу - как Ant task - который заботится о правильном создании файла манифеста.

Вот простой муравей файл, который строит проект Java, адаптированную из Ant tutorial:

<project> 

<target name="clean"> 
    <delete dir="build"/> 
</target> 

<target name="compile"> 
    <mkdir dir="build/classes"/> 
    <javac srcdir="src" destdir="build/classes"/> 
</target> 

<target name="jar"> 
    <mkdir dir="build/jar"/> 
    <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes"> 
     <manifest> 
      <attribute name="Implementation-Version" value="1.0"/> 
     </manifest> 
    </jar> 
</target> 

<target name="run"> 
    <java jar="build/jar/HelloWorld.jar" fork="true"/> 
</target> 

</project> 
+1

Я думаю, что новичкам следует научиться использовать реальные инструменты, а именно те, которые предоставляются JDK, - перед использованием стороннего программного обеспечения, такого как Ant. Это похоже на использование IDE при изучении нового языка. –

+1

Возможно. Но я не вижу упоминания о «новичках», просто «лучших практиках». –

+0

Совершенно очевидно, что человек, задающий вопрос, вероятно, не эксперт. –

7

Читайте на основах формата JAR Солнца на this tutorial. На мой взгляд, вы должны изучить основы - а именно МАНИФЕСТЫ, инструменты SDK - перед тем, как перейти к сторонним инструментам, таким как следующее.

Jar инструмент командной строки, распространяемые вместе с Sun JDK:

jar -cf myjar.jar base_src_folder 

Где base_src_folder это родительский каталог, содержащий исходный код.

В качестве альтернативы вы можете использовать инструмент построения, такой как Apache Ant. Он имеет такие функции, как JAR task, чтобы сделать это за вас.

0

Ant не очень легко начать. Вместо этого я бы предложил использовать IDE, например NetBeans, который создает скрипт Ant под капотом. Все, что вам нужно сделать, это нажать «build», и вы получите файл .jar в качестве результата.

+0

Я не согласен с тем, что его нелегко начать использовать Ant, но это действительно пригодится Netbeans. +1 –

+1

Ant's довольно чертовски легко подобрать ... –

+1

+1 на комментарий atc. мне нелегко было изучить Муравей. Мне было легко. – Veera

4

Apache Maven, для проектов, которые зависят от других проектов.

Понятно, что Maven может быть чрезмерным для обучения проектам, но он неоценим для более крупных, распределенных.

+0

Если Maven был правильно интегрирован в Eclipse (например, ant is), то это была бы не только лучшая практика, но и самая легкая. Maven строит как муравей, если сценарии были предварительно написаны для вас. – Ring

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