Нет вывода, пока я выполняю муравей через код свинга Java - PullRequest
0 голосов
/ 22 июня 2011

У меня есть Java-код Swing, в котором мне нужно вызывать сборку Ant во время выполнения, здесь я даю свой код, это правильный способ выполнения, иначе я внесу любые изменения, я также напишу здесь свою сборку ant. Пока я выполнение этого кода не выводит мою консоль, все еще пустую, почему эта проблема возникает, если есть какое-либо решение, пожалуйста, пришлите мне .. спасибо заранее

 Build.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub

                File buildFile = new File("child_build.xml");
                    Project p = new Project();
                    p.setUserProperty("ant.file", buildFile.getAbsolutePath());     
                    DefaultLogger consoleLogger = new DefaultLogger();
                    consoleLogger.setErrorPrintStream(System.err);
                    consoleLogger.setOutputPrintStream(System.out);
                    consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
                    p.addBuildListener(consoleLogger);

                    try {
                        p.fireBuildStarted();
                        p.init();
                        ProjectHelper helper = ProjectHelper.getProjectHelper();
                        p.addReference("ant.projectHelper", helper);
                        helper.parse(p, buildFile);
                        p.executeTarget(p.getDefaultTarget());
                        p.fireBuildFinished(null);
                    } catch (BuildException e1) {
                        //p.fireBuildFinished(e);
                    }

                }
            }
        });
    }

Мой муравейник ..:

<project basedir="." default="child_build" name="JavaSamp">
    <target name="child_build">
        <mkdir dir="classes" />
        <exec executable="C:\Program Files\Inno Setup 5\ISCC.exe">
            <arg value="${basedir}\Child_Script.iss" />
        </exec>

        <echo message="Child_Script is executed" />
    </target>
</project>

1 Ответ

2 голосов
/ 22 июня 2011

Я бы просто прокомментировал это, но у меня недостаточно представителей для этого Вы уверены, что не получаете исключение во время выполнения?

try {
                    p.fireBuildStarted();
                    p.init();
                    ProjectHelper helper = ProjectHelper.getProjectHelper();
                    p.addReference("ant.projectHelper", helper);
                    helper.parse(p, buildFile);
                    p.executeTarget(p.getDefaultTarget());
                    p.fireBuildFinished(null);
                } catch (BuildException e1) {
                    //p.fireBuildFinished(e);
                }

Это проглотит создаваемые исключения BuildException.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...