2011-11-30 64 views
0

我有興趣,營造一個純粹獨立的Java應用程序(Applet的沒有,沒有任何JSP),有一個TEXTBOX接受一個地址,將其劃分在市,省,郵編,國家使用Google Api。 對於我創建了一個淨豆項目,正在做完全一樣的,但如果我想創建這樣的:谷歌API java.lang.UnsatisfiedLinkError中異常

GClientGeocoder gc=GClientGeocoder.create(); 
gc.getLocations(add,this); 

它表明現在的java.lang.UnsatisfiedLinkError中

類定義是這樣的:

public class GoogleApiView extends FrameView implements GGeocodeAdvancedResultListener{ 
    bla bla bla................. 
} 

如果我評論的GClientGeocoder的代碼,它母鹿沒有例外。 同樣的事情是,我想這個代碼工作完美,因爲它唯一的東西給我的地址形式州,城市,郵編,國家

我該怎麼做才能去除這個異常。

Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: com.mapitz.gwt.googleMaps.client.GClientGeocoderImpl.create()Lcom/mapitz/gwt/googleMaps/client/GClientGeocoder; 
at com.mapitz.gwt.googleMaps.client.GClientGeocoderImpl.create(Native Method) 
at com.mapitz.gwt.googleMaps.client.GClientGeocoder.create(GClientGeocoder.java:36) 
at googleapi.GoogleApiView.btnOkActionPerformed(GoogleApiView.java:281) 
at googleapi.GoogleApiView.access$800(GoogleApiView.java:34) 
at googleapi.GoogleApiView$4.actionPerformed(GoogleApiView.java:164) 
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) 
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) 
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) 
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) 
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) 
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272) 
at java.awt.Component.processMouseEvent(Component.java:6267) 
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) 
at java.awt.Component.processEvent(Component.java:6032) 
at java.awt.Container.processEvent(Container.java:2041) 
at java.awt.Component.dispatchEventImpl(Component.java:4630) 
at java.awt.Container.dispatchEventImpl(Container.java:2099) 
at java.awt.Component.dispatchEvent(Component.java:4460) 
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577) 
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238) 
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168) 
at java.awt.Container.dispatchEventImpl(Container.java:2085) 
at java.awt.Window.dispatchEventImpl(Window.java:2478) 
at java.awt.Component.dispatchEvent(Component.java:4460) 
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) 
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) 
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) 
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) 
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) 

回答

0

你在什麼環境中運行它?只是做它看起來當JVM嘗試運行create()方法的一些操作系統特定的(本地到該環境)之類的網絡被稱爲周圍平時查房,隨後死亡

UnsatifiedLinkError

如果Java虛擬機無法找到本機聲明的方法的適當本地語言定義,則拋出此錯誤。

您可能需要完全設置您的環境或閱讀API規範並確定支持哪些本機環境。您可能只是缺少一些需要包含在構建過​​程中的文件。

以下鏈接提供了GClientGeocoder API http://code.google.com/apis/maps/documentation/javascript/v2/reference.html#GClientGeocoder的更多詳細信息,並且還建議使用HTTP地址解析器作爲替代方案。

+0

我使用的是Windows環境。 –

+0

您鏈接的文檔是JavaScript中涉及的類的文檔,或者我們可以說,它們將用於JavaScript,但我希望可以與Java中的獨立程序集成。 –

+0

您使用的是哪個版本的庫?你有一個API密鑰? http://geo-google.sourceforge.net/usage.html和http://code.google.com/apis/maps/signup.html?對不起,在JavaScript版本的鏈接,看起來像每個谷歌文檔他們正在從版本2(Java庫)遷移,贊成版本3和api-key-less javascript版本。 –