Я заметил эту проблему при попытке запустить базовое приложение командной строки в виде исполняемого файла JAR.Это прекрасно работает, если вы пытаетесь сделать что-то вроде создания и показа jframe.Мое единственное предложение: если вы работаете в Windows, вы можете создать командный файл со строкой:
java -jar nameofjar.jar
Назовите файл как-то вроде run.bat, и затем вы можете дважды щелкнуть по нему, и он запуститприложение командной строки.Кроме этого, я не уверен, почему эта проблема возникает с приложениями, основанными на вводе данных из командной строки.
РЕДАКТИРОВАТЬ:
Вот способ создать поддельную командную строку для отображения, если вы не можете понятьспособ заставить его работать, дважды щелкнув по банке.
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Insets;
import java.awt.Rectangle;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class FakeCommandPrompt {
private JTextArea myTextArea;
private JScrollPane scrollPane;
private JFrame mainFrame;
/**
* Setup the fake command prompt.
*/
public FakeCommandPrompt()
{
mainFrame = new JFrame();
mainFrame.setBounds(new Rectangle(new Dimension(500, 400)));
mainFrame.setBackground(Color.BLACK);
myTextArea = new JTextArea();
myTextArea.setBackground(Color.BLACK);
myTextArea.setForeground(Color.WHITE);
myTextArea.setEditable(false);
myTextArea.setMargin(new Insets(10, 10, 10, 10));
scrollPane = new JScrollPane(myTextArea);
scrollPane.setBackground(Color.BLACK);
mainFrame.add(scrollPane);
mainFrame.setVisible(true);
}
public void printToCommandPrompt(String text)
{
// Append the new next to the command prompt
// Add a new line at the end
this.myTextArea.append(text + "\n");
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// Create and instance of the fake command prompt.
FakeCommandPrompt commandPrompt = new FakeCommandPrompt();
// Prints 0 -> 5 on the fake command prompt.
for (int i = 0; i <= 5; i++)
{
commandPrompt.printToCommandPrompt(String.valueOf(i));
}
}
}
Также, вы можете рассказать мне о шагах, которые вы используете для создания исполняемого файла jar.Код выше должен быть запущен двойным щелчком по файлу jar.Если этого не произойдет, то, возможно, что-то не так с тем, как вы создаете JAR-файл.