Java импортирует в файл Jar - PullRequest
3 голосов
/ 04 марта 2011

Мой вопрос: есть ли способ поместить все импорты Java в файл jar, поэтому при создании программы Java нет необходимости импортировать файлы по отдельности ????

EDIT: Я имею в виду, как

import java.awt.*;
import java.awt.event.*;

в jar-файл, где вам не нужно вводить import java.awt.*; каждый раз

Ответы [ 3 ]

1 голос
/ 04 марта 2011

Если вы думаете о чем-то вроде глобального включаемого файла C / C ++, который допускает один оператор импорта в верхней части файла - тогда нет.

Однако ваша Java IDE должна автоматически добавлять импорт для вас.

1 голос
/ 04 марта 2011

Вы смешиваете две вещи - пакеты Java и файлы jar.

Пакет - это не более чем пространство имен для классов, часто используемых вместе.Оператор import java.awt.* не добавляет классы AWT в вашу программу, он просто позволяет писать Graphics вместо java.awt.Graphics и тому подобное.Вы ничего не можете сделать, чтобы избежать их импорта, если не хотите их прописывать (что еще более раздражает).

Чтобы иметь возможность использовать класс во время выполнения, этот класс должен бытьдоступны для виртуальной машины - независимо от того, импортировали ли вы ее или полностью написали ее имя.Стандартные классы, такие как java.awt.*, обычно уже известны вашей виртуальной машине (поскольку они являются частью среды выполнения).Чтобы использовать другие классы (включая ваши собственные), вам необходимо включить их в путь к классу (например, с помощью аргумента -cp в команде java или путем помещения их в текущий каталог), или вам нужно загрузитьих собственным загрузчиком классов.Здесь вы можете использовать файлы jar - файлы классов могут находиться либо в файлах jar, указанных в пути к классам, либо внутри каталогов, указанных в пути к классам.(URLClassloader работает так же.)

Но, опять же, упаковка классов в jar-файлах не мешает импортировать их, чтобы иметь возможность их использовать.Один из них касается разрешения имен компилятора, другой - загрузки классов времени выполнения.

1 голос
/ 04 марта 2011

Для этого вы можете использовать netbeans http://java.sun.com/developer/technicalArticles/java_warehouse/single_jar/

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