Использование MigLayout, импортированного из .jar - PullRequest
1 голос
/ 13 февраля 2012

Я обычно работаю в Eclipse. В моей программе я использую этот файл miglayout-4.0-swing.jar из этого источника: ссылка .
В файле .jar есть класс с MigLayout .
Я использую этот импорт:

import net.miginfocom.layout.Grid; 
import net.miginfocom.swing.MigLayout;

// Это из файла фляги.

В Eclipse я просто добавляю библиотеку:
Путь сборки Java -> Библиотеки -> Добавить JAR / Добавить внешние JAR -> путь к miglayout-4.0-swing.jar
Так во всем работает.
Но мне нужно запустить его из терминала: Java (я не использую пакеты, поэтому я использую только классы из bin), но есть проблема с файлом .jar, потому что класс myMain, вероятно, не знает, где находятся классы для этого. .jar (не работает импорт сверху). Я попытался скопировать файл .jar в тот же каталог, где находятся классы. Не помогает Что я должен сделать, чтобы правильно добавить файл .jar?

Ответы [ 2 ]

3 голосов
/ 13 февраля 2012

Командная строка java команда не знает, где искать файл jar miglayout. Вы должны запустить из командной строки, как

java -cp path_to_miglayout_jar myMain

0 голосов
/ 05 июля 2013

Довольно старый вопрос, но ради полноты:

Вам нужно, чтобы . (текущий каталог) и miglayout-4.0.jar находились на вашем пути к классам. У вас есть два способа сделать это. Самый простой - использовать -cp

В вашем случае вам нужно выполнить:

java -cp "path_to_miglayout_jar/miglayout-4.0-swing.jar:." myMain

или если вы работаете в ОС Windows:

java -cp "path_to_miglayout_jar/miglayout-4.0-swing.jar;." myMain

Если вы не уверены, что вам нужно использовать ; (двоеточие) или : (или все, что запрашивает ОС), вы можете взглянуть на java.io.File.pathSeparator, который содержит правильный разделитель.

Другой способ - изменить переменную CLASSPATH.

...