2014-02-21 38 views
2

我正在使用java構建一個需要使用MS Access的應用程序。 我運行該項目時出現以下錯誤:Java中的「undefined symbol:SQLAllocEnv」錯誤

/usr/lib/jvm/jdk1.7.0/bin/java:符號查找錯誤:/usr/lib/jvm/jdk1.7.0/jre/lib /i386/libJdbcOdbc.so:undefined symbol:SQLAllocEnv

這是什麼意思?

回答

2

正如您在您的previous question中所提到的,您正在嘗試在Linux(Ubuntu)中開發一個最終將部署在Windows上的項目。我懷疑你在沒有安裝適當的驅動程序軟件的情況下試圖在Linux中使用JDBC-ODBC Bridge。

我見過很多關於在Linux下使用unixODBCMDB Tools來操作Access數據庫的答案,但是以我自己的經驗來看,還沒有很好的解決。相反,我會提供以下建議:

  • 如果您正在爲Windows開發項目,那麼請在Windows下進行開發。然後,您可以使用JDBC-ODBC Bridge和實際的Microsoft Access ODBC驅動程序。但是請記住,JDBC-ODBC Bridge已從JDK8中刪除,並且不受支持,如前面的答案here中所述。

  • 如果必須做Linux下開發,然後使用UCanAccess(或者只是Jackcess,這UCanAccess用作其下級界面,Access數據庫文件),並部署所需的組件與您的應用程序。

+0

感謝Gord提供的解決方案。我會執行它。 – user2822187