Как я могу получить свою Java-программу, написанную на NetBeans, для компиляции с Javac? - PullRequest
2 голосов
/ 06 декабря 2010

У меня есть два файла Java.Они отлично работают в NetBeans, но я должен скомпилировать их в javac и запустить на Unix-машине, так как я подключаюсь к базе данных на сервере моей школы.

Я искал в Интернете, но все слишком конкретно, и я не слишком знаком с NetBeans.

Я копирую эти два java-файла и файл .form в каталог на сервере моей школы, а затем пытаюсь скомпилировать два java-файла, используя javac.Тем не менее, я предполагаю, что он не компилируется, потому что отсутствует вся информация из файла .form?

Я получаю 100 ошибок при компиляции одного из java-файлов, и они выглядят примерно так:

CARTSJFrame.java: 380: пакет org.jdesktop.layout делаетне существует .add (jPanel9, org.jdesktop.layout.GroupLayout.PREFERRED_ SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLay

у меня было предположение, чточто-то связанное с файлом .form, который я вижу в своем каталоге проектов NetBeans.

Я рассматривал предыдущие вопросы по этому поводу, но все еще не смог выяснить это. Любая помощь приветствуется.

Ответы [ 2 ]

2 голосов
/ 06 декабря 2010

Вы сталкиваетесь с ошибками компиляции, потому что NetBeans автоматически включает jar в путь к классам вашего проекта, когда вы компилируете и запускаете проект.

NetBeans использует файл точечной формы, чтобы помочь ему сгенерировать код для макета. Не используется во время компиляции.

Существует несколько стратегий, которые вы можете использовать для решения этой проблемы:

  1. Получите банку с классами ... http://www.findjar.com/jar/net.java.dev.swing-layout/jars/swing-layout-1.0.1.jar.html;jsessionid=252692AC0FBE9421C9436A748744ACED... и включите эту банку в свой classpath при компиляции и во время выполнения.

  2. Преобразование кода в вашем проекте в используйте javax.swing.GroupLayout. Это «стандартная часть» Java SE 6. В этом ответе SO рассказывается, как конвертировать между org.jdesktop.layout.GroupLayout и javax.swing.GroupLayout в NetBeans .

0 голосов
/ 06 декабря 2010

Я думаю, что ваша проблема в том, что javac не знает, где найти эту библиотеку.

Типичный проект Java использует много библиотек.Netbeans использует папку «lib» для хранения этих библиотек, а также некоторые файлы конфигурации для автоматической установки пути к классам.Classpath - это переменная среды, которую Javac использует, чтобы «знать», где находятся библиотеки.

Когда вы используете javac для компиляции java-файлов, вам необходимо сначала предоставить переменную CLASSPATH.Напишите все ваши зависимости.

Пример:

Project / compile_all.sh

export CLASSPATH=$CLASSPATH:"lib/jopt-simple-3.2.jar":"lib/commons-io-2.0.jar"

javac src/*.java

Теперь вам просто нужно запустить

sh compile_all.sh 

Ион собирает все ваши файлы .java

...