2009-02-05 96 views
1

我相當惱火/此刻百思不得其解。Netbeans的,螞蟻和RMIC(Java RMIC編譯器)(幫助與)

我有一個NetBeans項目,該編譯罰款。 我已經編輯build.xml文件,創建一個「-post編譯」目標,這確實一個RMIC Ant任務。

所以現在,當我「清理並生成」它編譯我主要的代碼,然後生成對我來說RMIC存根。

但是,當我選擇'運行'我的netbeans項目時,使用netbean的dialouges,我的存根文件神奇地消失。 (但編譯後的類仍然存在)然後它會嘗試運行我的應用程序,當然這會失敗,因爲現在缺少所需的存根文件。

這是一個NetBeans管理的項目(不自由格式螞蟻應用程序)。我已經指定了我想要'跑步'的班級。這實質上是我得到的唯一選擇。

我已經試過:

<target name="-post-compile"> 
<rmic classname="RTIController.Lane_Assignment_Strategy.Impl_Lane_Assignment_Strategy_Dist_FirstFlow" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Road" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Lane" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Veh_Source" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Veh_Sink" base="${build.classes.dir}"/> 
<rmic classname="RTIController.Timing_Event.Adapter_Timing_Event_Source" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Vehicle.Impl_Vehicle_Car" base="${build.classes.dir}"/> 
<rmic classname="MappingModel.Impl_SimObjectPackage.Impl_Vehicle.Impl_Vehicle_Truck" base="${build.classes.dir}"/> 
</target> 
<target name="run" depends="init,compile,graphicalMapper-impl.run"/> 

的build.xml文件(覆蓋build-impl.xml中)內。

任何人都可以揭示出這個問題的一些輕? 在另一個說明中,當我通過類似('ant run')的命令運行Ant時,它工作正常。 (初始化,編譯,後期編譯和運行)

當試圖讓Netbeans'運行'應用程序時檢查Ant調試日誌時,它只顯示執行任務'運行'。 (這顯然不是我提供的重寫'運行'

我非常感謝這個主題的任何幫助,因爲單獨編譯和運行是相當反效果的。 netbeans和使用cmdline ant來構建和運行。)

回答

1

只是一個瘋狂的猜測(因爲我一直沒有使用過RMI),因爲不再需要Java 1.5 RMI存根類,它們會自動生成。可能是原因的NetBeans刪除它們。

你可以試着從你的build.xml刪除RMIC螞蟻任務引用。

0

我有完全相同的問題。 我解決它的方式是從我的項目中重寫build.xml中的「運行」目標。

<target name="run" depends="PrOJECT-impl.jar"> 
    <java classpath="${run.classpath}" jar="${dist.jar}"> 
     <sysproperty value="codebase_url" key="java.rmi.server.codebase"></sysproperty> 
     <sysproperty value="policy" key="java.security.policy"></sysproperty> 
    </java> 
</target> 

然而,問題仍然沒有完全解決,因爲使用上下文菜單或F6仍然會刪除存根和骨架文件。您需要直接從build.xml文件運行「運行」目標。