2011-04-11 42 views
12

我正在研究一個Java項目,並且我不太熟悉Java的使用 我通常使用C#和aforge來處理我的計算機視覺項目 現在我必須使用Java和I想要使用C#編寫的aforge DLLs 有沒有辦法做到這一點?在Java項目中使用C#編寫的DLL

謝謝

回答

-1

不同的編譯器不行,這是不可能的。除非你在visual studio中使用java sharp語言,那麼編譯器馬赫。

+0

我的建議是找一個AI圖書館爲Java。 – Radu 2011-04-15 11:27:11

1

你將不得不使用本地調用,這將會a)真的讓人感到惱火以保持最新狀態,並且B)打敗java跨平臺的巨大優勢。

最好的辦法可能是嘗試找到一些可以將C#轉換爲java的東西 - 或者更好地將您的C#代碼重新編碼爲java。

從長遠來看,它會爲您節省很多的壓力。

2

不確定這種可能性,但你的想法不太好。 你仍然可以使用COM或掛鉤或嘗試ngen,但這種方式都很奇怪。

Java與C#非常相似。嘗試使用Java或類似stab的代碼,我認爲在jvm的某些基於JVM的語言中編碼非常容易。

4

可能,但您需要做一些工作才能正確調用它們。我從來沒有自己做過,但直到有人能夠更好地回答這個問題,這裏有幾個地方可以開始。

看看JNI(Java本地接口,谷歌或維基百科可以告訴你更多),它可以讓你從Java調用其他語言。似乎有一個名爲jni4net(http://jni4net.sourceforge.net)的項目,該項目旨在完成您想要的任務,但目前它處於alpha階段,可能不夠穩定。還是值得看看。

你也可以自己做,通過JNI調用一個C調用,然後最終到達CLR,但它看起來像很多努力。我知道這不是一個快速而簡單的解決方案,但它可能會給你幾個地方開始。也似乎是一個相當不錯的看看如何去解決它。

儘管到目前爲止所有其他的答案都說過,但它很煩瑣,也很痛苦。如果你能做其他事情,那可能是值得的。