Javac не производит вывод - PullRequest
       26

Javac не производит вывод

3 голосов
/ 28 ноября 2011

Я пытаюсь скомпилировать проект Java из командной строки, используя javac, но я не получаю вывод в командной строке.Кроме того, файлы .class не создаются.

Точный синтаксис, который я использую для вызова команды javac, приведен ниже:

javac @options @javaFiles

Содержимое файла параметров приведено ниже:

-g
-verbose
-d classes
-classpath cp1;cp2;cp3

, где cp1, 2, 3 и т. Д. Относятся к файлам jar на моем компьютере.Файл javaFiles содержит список файлов java, которые я хочу скомпилировать:

C:\path\to\dir\one.java
C:\path\to\dir\two.java

Проблема в том, что в командной строке нет вывода (если я пропущу одно из переключателей командной строки, тоявляется выводом ошибки в командной строке), и в папке классов не создаются файлы .class.Также, если я добавлю ключ '-Xstdout output.txt' в файлы опций и попробую скомпилировать.Команда javac, выходы и поле output.txt созданы, но в файле нет информации.

Мой вопрос: я использую неверный синтаксис для вызова javac и как мне это изменить?

РЕДАКТИРОВАТЬ:

Я изменил параметры и файлы javaFiles, как указано в ответе Джаспера, но сейчас получаю следующую ошибку:

* __ * javac @options @javaFiles
javac: файл не найден: com \ compname \ cloud \ Automation \ portal \ definitions \ Landing \ LandingPage.java
Использование: javac <options> <source files>
Используйте -help для списка возможных вариантов

РЕДАКТИРОВАТЬ 2:

Хорошо, эта проблема была с одной из банок на пути к классам.Когда этот jar был удален (боль в a $$, удаляя каждый jar за раз), все компилируется правильно и создаются файлы .class.

Я до сих пор не уверен, почему javac молча терпит неудачу, когда этот jarна пути к классам, даже при использовании подробного переключателя.

На данный момент, я могу обойтись без использования этой банки.Я ценю помощь, оказанную людьми ...

Ответы [ 2 ]

0 голосов
/ 30 апреля 2013

Я только что столкнулся с той же проблемой, и, похоже, она связана со сторонними jar-файлами со знаком и без знака:

  • , если я вызываю javac и использую jar-файлы без знака, все работает как положено
  • если я подписываю сторонние jar-файлы перед компиляцией моего кода, javac молча завершается сбоем

Надеюсь, это поможет, .Andrea

0 голосов
/ 28 ноября 2011

Во втором файле вместо использования полных путей используйте только пути из базового каталога пакета. Предположим, ваш код находится в пакете org.mypackage, а ваши исходные файлы находятся в каталоге C:\myproject\src\org\mypackage, поместите его во второй файл:

org\mypackage\One.java
org\mypackage\Two.java

В первом файле добавьте параметр -sourcepath:

-sourcepath C:\myproject\src
...