2012-11-01 72 views
1

我試圖從Haxe調用外部Java函數。我怎樣才能調用我從Haxe編寫的Java函數?從Haxe調用Java函數

Java代碼:

public class ExternalClass{ 

    public static String myFunction(){ //this will be invoked from Haxe 
     return "External Java function"; 
    } 

} 

HAXE主類:

class Main 
{ 
    public static function main() 
    { 
     trace(myFunction()); //how can I properly access this Java method? 
    } 
} 

HAXE的extern類:

extern class Test 
{ 
    public static function myFunction():String; 
} 
+0

使用Haxe「extern」類可以做到這一點,但是應該如何將外部類定義在與Main類和ExternalClass相同的文件夾中? http://haxe.org/doc/java/externs –

+0

是否所有3個文件都保存在同一個源文件夾中? –

+0

此問題似乎在這裏解決:http://stackoverflow.com/questions/13189417/access-external-javascript-libraries-using-haxe –

回答

1
class Main 
{ 
    public static function main() 
    { 
     trace(ExternalClass.myFunction()); //how can I properly access this Java method? 
    } 
} 

extern class ExternalClass 
{ 
    public static function myFunction():String; 
} 

您的外部類應該具有相同的名稱,你的母語java類。

然後,您必須將您的函數作爲經典靜態函數調用,並將類名稱預先添加到函數名稱中。