ПредишенСледващото

Изграждане на проекти

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

автоматизация на монтажа - етап на скриптове или автоматизация на широк спектър от задачи по отношение на софтуер, който се използва от разработчиците в ежедневната си дейност, включително дейности, като например:

  1. компилира сорс код в двоичен код
  2. монтаж двоичен код
  3. тест изпълнение
  4. разгръщането на програмата за производство на платформа
  5. писането документация или описание на промените в новата версия

За изграждането на проекти за автоматизация, традиционно използвани за сглобяване системи, като се направи на Unix като системи и nУверете се за Microsoft компилатор. Традиционно записване на файлове за изграждане на проекта в рамките на тези системи не е тривиална задача. Разбира се, като се използват само Mictosoft Visual Studio не могат дори да подозират за съществуването на тези файлове като интегрирана среда за разработка достатъчно удобно се крие цялата схема на работа, оставяйки извън някои диалогови прозорци и бутона Build. Но за сложни проекти с много библиотеки на трети страни и проекти с различни платформи, този подход е често неприемливо.

принципи за монтаж в Java

1. По какъв начин Java компилаторът

текст на програмата --- \

-> Javac -----> * .class

Добавки - [-СР] - /

текст на програмата - програма на изходния код в Java.

Добавки - класове, които трябва да бъдат разгледани по време на монтажа (библиотека).

В резултат на това ние се набор от файлове с разширение клас. Това означава, че ако използваме библиотеки на трети страни - ние трябва да им кажа в събранието. Тя може да бъде компилиран класове или събрани подсистема.

Не винаги е необходимо да се съберат да определи допълнителни библиотеки (например, ако имаме една програма в програма файл 1). Но ако все пак това е необходимо, трябва да започнете с аргумента «-СР» (съкращение за -classpath) за този Java компилатор. След това този аргумент в списъка на библиотеки (JAR файлове или клас файлове), разделени от файловете на разделителни символ (* Никс това ":" В Windows е ";").

Пример за съставянето на програма от един файл:

Пример програма за съставяне на допълнителни библиотеки С «myLib» и «my2ndLib»:

javac -СР myLib.jar: my2ndLib.jar NotStandartHelloWorld.java

В Java не се прави разграничение между информацията, събрана библиотека, изпълним молбата или подсистема. Какво се има предвид е, че ако искате да се създаде независим орган в един единствен файл, можете да създадете файл буркан. Например, ако създадете библиотека, той ще бъде един буркан файл с набор от класове, които могат да бъдат използвани от други разработчици, ако дадена подсистема, тя е част от функционалната (набор от класове), направен извън обхвата на основния модул, но се използва в него (нещо като частна библиотека) и др ..

2. Изпълнение на Java-програма.

* .class ----- --- \

Добавки - [-СР] - /

Изпълнение клас работи по подобен начин за съставяне (дори използва същите аргументи).

Ако след компилация имаме 10 класове, тогава единственият клас, който съдържа основната функция, другите класове трябва да бъдат представени като библиотека.

Например, стартирайте програма в допълнителната библиотека «Sout», която се намира в директорията «ИЪ» за да изглежда така:

Java -СР Пб / sout.jar HelloWorld

По подразбиране всички класове в текущата директория е включена в пътя (-СР за класове в текущата директория не трябва да се уточнят). Какво имаме предвид, когато съставя програмата, и като резултат има много класове в една папка, тогава ние може да работи само на главния клас, други класове на Java се опитва да намери себе си в текущата директория (дори ако те се намират в подпапки, Java, и там надникнем).

Този подход е приемлив, когато имаме малко класа, но за големи системи, изброяващ всички класове не е възможно (броят може да надвишава хиляда ...). Ето защо, ние не може да извършва клас и специално изградена буркан-файл. За да направите това, трябва да укажете на -jar аргументи.

3. Jar-файл

JAR-файла - един ZIP архив (т.е., можете да го разархивирате). JAR-файл трябва да съдържа набор от класове и файловата META-INF / MANIFEST.MF, която описва характеристиките на JAR-файла.

Основната опцията за създаване на JAR-файл:
буркан CF буркан файл входно-файл (а)

Jar - инструмент, както и набор от инструменти, които можете да получите, когато инсталирате Java.

буркан програма приема аргументи в стария-UNIX стил: първо, са ключовете тогава програмата аргументи с клавиша аргумент е посочено последно, не посочвайте "-" пред аргументите групирани кратък аргумент ( "CF" означава «-c -f»).

  1. Вариант в - казва, че искате да създадете (създаване) JAR-файл.
  2. Вариант е - казва, че искате да създадете файл (файл) с определено име (при извършване на този пример, да създадете файл с име «буркан-file.jar»).
  3. Аргумент входно-файл (а) е пространство, разделени от един или повече файлове, които искате да включите в JAR-файл. входно-файл (а) аргумент може да съдържа символа "*". Ако някоя от входа е директория, съдържанието на тези директории се добавят към архива на JAR рекурсивно.

Когато създавате JAR-файл, той автоматично получава по подразбиране манифест файл (ако не сте посочили във входните файлове - той ще бъде създаден автоматично). В буркан-файл може да бъде само един манифест файл с указания път:

Цялостната структура на манифеста е както следва:

Манифест-версия: 1.0Sozdannaya-By: 1.6.0 (Sun Microsystems Inc)

Тези линии показват, че проявяват елементи имат формата на "заглавието: стойност" двойки. Името на глава е отделена от нейната стойност от дебелото черво. Манифестът по подразбиране съответства на версия 1.0 на спецификацията манифест е създаден версия 1.6.0 JDK.

Манифестът също може да съдържа информация за други файлове, които не са опаковани в архив (външни библиотеки, които са необходими за експлоатацията, това ще бъде обсъдено по-подробно по-долу). Точно каква информация буркан файл трябва да бъде написан в манифеста, зависи от начина, по който възнамеряват да използват JAR-файла. Манифестът по подразбиране не прави предположения за това каква информация би трябвало да записват за други файлове.

За да създадете буркан-файл с манифест:
буркан CFM буркан файл явна присъединителна входно-файл (а)

Ключовата «е» и «м» и двете изискват аргументи, така че ние първи дефиниране на ключа, а след това в реда, уточни (ако е необходимо) липсващите аргументи. В началото ние посочи аргумент «е», а след това «м», така че първият аргумент е името на изходния файл, а вторият е името (и пътя) на манифеста.

Ако сте написал манифест не е една от опциите по-горе, те ще бъдат добавени автоматично (това е, добре, уточни манифеста, или да посочите празен файл, то е едно и също нещо, то често се прилага в началото на развитието ...). Това е, ако си манифест е, както следва:

Това в крайна буркан-файл, той ще бъде представен под формата на:

Манифест-версия: 1.0Sozdannaya-By: 1.6.0 (Sun Microsystems Inc) Main-Class: Main

Ако разработвате приложения. който идва в JAR-файл, трябва по някакъв начин да се посочи кой клас в рамките на JAR-файла е входна точка на приложението (което съдържа основната функция). Вие предоставяте тази информация с Main-Class заглавието на в манифеста, който има общ вид:

Main-Class: името на класа

име Значение клас е името на класа, който е на входа точката на прилагане.

След като инсталирате заглавието на Main-Class в манифеста, поемате JAR файл с помощта на следната форма Java команда:

Без да се уточни главният клас в манифеста Дава ви стартирате програмата, както следва:

Ако искате да зададете основен клас в манифеста, че не е нужно да се създаде цялата манифеста, можете да зададете необходимите параметри, когато се обадите буркана:

буркан CFE app.jar Моето приложение MyApp.class

Вариант е - предполага входна точка в програмата (entrypoint).

Вие ще трябва да се отнасят за класове в други JAR файлове от JAR-файла (ако използвате трета страна библиотека в молбата Ви). За да направите това, вие трябва да включва следните полета в манифеста:

Клас-Path: jar1 име jar2-име на директория име / JAR3 име

Този път е по отношение на местоположението на изпълнимия буркана. Например, Netbeans поставя всички библиотеки в ИЪ папката, която поставя в непосредствена близост до изграждане на заявлението, и по този начин посочва пътя до библиотеката.

Помислете за последен пример на манифеста за изпълними файлове буркан-библиотеки, които са с него в «ИЪ» папка:

Манифест-версия: 1.0Sozdannaya-By: 1.6.0 (Sun Microsystems Inc) Main-Class: net.mycompany.product1.MainClass-Path: ИЪ / recoder.jar ИЪ / Йо-common.jar ИЪ / F

Подкрепете проекта - споделете линка, благодаря!