java - Eclipse - 将每个主要方法分配给一个单独的控制台

标签 java eclipse console program-entry-point

我目前正在编写一个程序,我想知道当我运行以下 main 方法时,eclipse 是否有可能为每个 main 自动打开单独的控制台:

public static void main(String[] args) {
    object1.main(args);
    object2.main(args);
    object3.main(args);
    object4.main(args);
}

我目前的解决方案是运行每个主要方法并在“显示选定的控制台”选项中选择合适的方法进行查看,尽管每次我想测试我的程序时这是一个非常乏味的过程。如果您有任何建议,我将不胜感激。

谢谢

最佳答案

如果您从另一个 main 方法中多次调用您的 main 方法,这与多次调用任何其他静态方法没有什么不同。特别是,您程序的所有这些实例都将在同一个 JVM 中执行。

相反,您可以使用简单的 Ant script启动程序的多个实例,例如:

<?xml version="1.0"?>
<project name="Test" default="run_external">
    <target name="compile">
        <delete dir="bin" />
        <mkdir dir="bin" />
        <javac srcdir="src" destdir="bin" />
    </target>
    <target name="run_many" depends="compile">
        <parallel>
            <java classname="test.Main" classpath="bin" />
            <!-- copy-paste 'java' block for more instances -->
        </parallel>
    </target>
    <target name="run_external" depends="compile">
        <parallel>
            <exec executable="xterm" dir="bin">
                <arg value="-e" />
                <arg value="java test.Main" />
            </exec>
            <!-- copy-paste 'exec' block for more instances -->
        </parallel>
    </target>
</project>

这个脚本定义了三个目标——执行哪个目标由default参数决定。

  • 第一个目标,compile,只是调用javac 来构建src 目录中的所有源代码。这会在任何其他目标运行之前自动执行。
  • 第二个目标,run_many,简单地并行启动您的 Main 类几次。每个实例将在单独的 JVM 中运行,但所有这些实例的输出将混合在 Eclipse 的控制台窗口中。
  • 第三个目标,run_external,启动一个运行相应 Java 进程的 xterm 终端仿真器,即对于您的程序的每个实例,一个新的终端应该弹出。 (在 Windows 上执行此操作时,您可能必须使用 cmd.exe 或类似工具。)

不确定这是否是您要找的。希望这会有所帮助。

关于java - Eclipse - 将每个主要方法分配给一个单独的控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14924262/

相关文章:

java - 需要在等待函数上下文中实现 Thread.sleep(100) 来评估 sleep 时间?

java - 带有 java Play Framework 2 的 HTML 表单

java - R.java 从未出现

c - 为什么会发生这种情况(见图)?

java - 如何杀死不可中断的线程?

java - 库项目中的类出现奇怪的 ActivityNotFoundException

java - 无法更新 SQLite 数据库中的整数字段

java - JBoss 在 Debug模式下速度极慢

php - ZF2 控制台路由无限参数

java - Play Framework 清洁与清洁所有