Файл банки командной строки Java

Я создал несколько .jar файлов (использующий функцию Eclipse экспорта), но они были всеми графический интерфейсами пользователя. Я хочу создать .jar файл, который является строго командной строкой; действительно ли это возможно?

8
задан Pandemic 20 January 2010 в 16:29
поделиться

5 ответов

Нет такой вещи, как «банка GUI» или «JAR командной строки». Если вы хотите, чтобы программа работать в командной строке, вы прочитаете и записываете из System.in и System.out или файлы, а не с помощью Swing или AWT.

Если с другой стороны, вы спрашиваете, как создать банку на командной строке, команда не слишком удивительно «банка». Как в JAR CF Foo.jar com / my / foo / *. Класс

8
ответ дан 5 December 2019 в 10:03
поделиться

Отсутствует тип «GUI jar» или «command line jar». Если вы хотите, чтобы программа работала в командной строке, то вы читаете и записываете из System.in и System.out или файлов, а не с помощью Swing или AWT.

Если, с другой стороны, вы спрашиваете, как создать банку в командной строке, команда не слишком удивительно «банка». Как в jar cf foo.jar com/my/foo/* .class

-121--3595154-

Я думаю, что антиобразец здесь - это чрезмерное использование интерфейсов.

-121--3095729-

Да, вы можете запустить свою программу со следующей командной строкой

java -jar <JARFILE> <CLASSNAME>

Возможно, вам придется указать -cp < DIRECTORY > или -classpath < DIRECTORY > , чтобы указать ее на любые другие необходимые банки.

3
ответ дан 5 December 2019 в 10:03
поделиться

Для автоматизации вещей, которые я бы порекомендовал использовать JAR JAR задача . Ant BuildFile выглядит так:

<project default="buildHello">
  <target name="compile">
    <javac srcdir="." />
  </target>

  <target name="jar" depends="compile">
    <jar destfile="hello.jar"
         basedir="."
         includes="**/*.class"
         />
  </target>

  <target name="buildHello" depends="compile,jar" />
</project>

Это будет начнется просто набрав муравей . Eclipse также имеет поддержку муравья.

> ant jar
Buildfile: build.xml

compile:

jar:
      [jar] Building jar: /Dev/hello.jar

BUILD SUCCESSFUL
Total time: 2 seconds
1
ответ дан 5 December 2019 в 10:03
поделиться

Я не уверен, что вы спрашиваете, но все зависит от вашего кода.

Если ваш код Java использует JFRAME и другие компоненты GUI, то да, когда вы создаете банку, у вас будет программа GUI.

Если ваш код Java просто печатает на экране без использования каких-либо компонентов GUI, у вас будет приложение консоли.

1
ответ дан 5 December 2019 в 10:03
поделиться

Да, можно создать консольную программу на Java. В Eclipse даже есть Runnable JAR File Export.

Я только что создал фиктивное приложение, которое распечатывает аргументы, заданные в командной строке, затем экспортировал его в виде банки и запустил с помощью java -jar test.jar foo bar

package com.stackoverflow;

public class Test
{
  public static void main(String[] args)
  {
    for (int i = 0; i < args.length; ++i)
      System.out.println(args[i]);
  }
}

Затем щелкните правой кнопкой мыши на Test. java файл в Eclipse и воспользуйтесь меню "Export...", выберите "Runnable JAR file" и экспортируйте его, например, в C:\test.jar

Затем откройте командную строку и введите java -jar C:\test.jar foo bar, который распечатает

foo
. бар

4
ответ дан 5 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: