【发布时间】:2011-09-17 04:46:28
【问题描述】:
我想通过java代码执行一个ant build。我使用以下代码,出现错误。
Ant helper = new Ant();
helper.setTarget("build_new");
helper.setAntfile("build_new.xml");
helper.execute();
错误:
线程“AWT-EventQueue-0”中的异常 java.lang.NullPointerException 在 org.apache.tools.ant.taskdefs.Ant.init(Ant.java:125) 在 org.apache.tools.ant.taskdefs.Ant.reinit(Ant.java:139) 在 org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:292) 在 com.demo.test.JavaSamp$4.actionPerformed(JavaSamp.java:216) 在 javax.swing.AbstractButton.fireActionPerformed(未知来源) 在 javax.swing.AbstractButton$Handler.actionPerformed(未知来源) 在 javax.swing.DefaultButtonModel.fireActionPerformed(未知来源) 在 javax.swing.DefaultButtonModel.setPressed(未知来源) 在 javax.swing.AbstractButton.doClick(未知来源) 在 javax.swing.plaf.basic.BasicMenuItemUI.doClick(未知来源) 在 javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(未知来源) 在 java.awt.Component.processMouseEvent(未知来源) 在 javax.swing.JComponent.processMouseEvent(未知来源) 在 java.awt.Component.processEvent(未知来源) 在 java.awt.Container.processEvent(未知来源) 在 java.awt.Component.dispatchEventImpl(未知来源) 在 java.awt.Container.dispatchEventImpl(未知来源) 在 java.awt.Component.dispatchEvent(未知来源) 在 java.awt.LightweightDispatcher.retargetMouseEvent(未知来源) 在 java.awt.LightweightDispatcher.processMouseEvent(未知来源) 在 java.awt.LightweightDispatcher.dispatchEvent(未知来源) 在 java.awt.Container.dispatchEventImpl(未知来源) 在 java.awt.Window.dispatchEventImpl(未知来源) 在 java.awt.Component.dispatchEvent(未知来源) 在 java.awt.EventQueue.dispatchEventImpl(未知来源) 在 java.awt.EventQueue.access$000(未知来源) 在 java.awt.EventQueue$1.run(未知来源) 在 java.awt.EventQueue$1.run(未知来源) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.security.AccessControlContext$1.doIntersectionPrivilege(未知来源) 在 java.security.AccessControlContext$1.doIntersectionPrivilege(未知来源) 在 java.awt.EventQueue$2.run(未知来源) 在 java.awt.EventQueue$2.run(未知来源) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.security.AccessControlContext$1.doIntersectionPrivilege(未知来源) 在 java.awt.EventQueue.dispatchEvent(未知来源) 在 java.awt.EventDispatchThread.pumpOneEventForFilters(未知来源) 在 java.awt.EventDispatchThread.pumpEventsForFilter(未知来源) 在 java.awt.EventDispatchThread.pumpEventsForHierarchy(未知来源) 在 java.awt.EventDispatchThread.pumpEvents(未知来源) 在 java.awt.EventDispatchThread.pumpEvents(未知来源) 在 java.awt.EventDispatchThread.run(未知来源)有什么建议
【问题讨论】:
-
问了 34 个问题,仍然没有格式化代码和异常。
-
找到 Ant.java 的源代码。转到第 125 行。看看那里发生了什么。我的猜测是您的目标不存在,或者您的 ant 文件路径错误。
-
您使用的 Ant 版本是多少?如果没有版本信息,很难从 src 中查看发生了什么:(