2012-02-06 26 views
4

我希望使用Apache Commons VFS庫在我的Android項目,並從http://commons.apache.org/vfs/download_vfs.cgi下載相關文件。然而。我遇到一些問題。的Android - 安裝Apache下議院VFS - 問題

,我複製公地vfs2-2.0.jar文件到我的Android項目的/庫/子目錄,並在Eclipse的Java構建路徑引用它。我還引用了Commons VFS使用的Commons Logging庫(http://commons.apache.org/vfs/download.html)。

一切編譯罰款,但只要我努力的代碼

FileSystemManager fsManager = VFS.getManager(); 

以下行我得到一個異常。這裏的堆棧跟蹤:

02-06 16:22:29.724: ERROR/Fatal Error(20515): Could not create a file system manager of class "org.apache.commons.vfs2.impl.StandardFileSystemManager". 
02-06 16:22:29.724: ERROR/Fatal Error(20515): org.apache.commons.vfs2.FileSystemException: Could not create a file system manager of class "org.apache.commons.vfs2.impl.StandardFileSystemManager". 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.VFS.createManager(VFS.java:99) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.VFS.getManager(VFS.java:50) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at gymApp.gymAppPackage.Utility.test(Utility.java:391) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at gymApp.gymAppPackage.HomeActivity.onCreate(HomeActivity.java:51) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2466) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2519) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.ActivityThread.access$2200(ActivityThread.java:123) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1870) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.os.Handler.dispatchMessage(Handler.java:99) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.os.Looper.loop(Looper.java:123) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at android.app.ActivityThread.main(ActivityThread.java:4370) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.reflect.Method.invokeNative(Native Method) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.reflect.Method.invoke(Method.java:521) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at dalvik.system.NativeStart.main(Native Method) 
02-06 16:22:29.724: ERROR/Fatal Error(20515): Caused by: org.apache.commons.vfs2.FileSystemException: Could not load VFS configuration from "jar:file:/data/app/gymApp.gymAppPackage.apk!/org/apache/commons/vfs2/impl/providers.xml". 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.configure(StandardFileSystemManager.java:199) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.init(StandardFileSystemManager.java:123) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.reflect.Method.invokeNative(Native Method) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.reflect.Method.invoke(Method.java:521) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.VFS.createManager(VFS.java:88) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  ... 16 more 
02-06 16:22:29.724: ERROR/Fatal Error(20515): Caused by: org.apache.commons.vfs2.FileSystemException: Could not create file provider of class "org.apache.commons.vfs2.provider.local.DefaultLocalFileProvider". 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.createInstance(StandardFileSystemManager.java:490) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.addProvider(StandardFileSystemManager.java:371) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.configure(StandardFileSystemManager.java:270) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.configure(StandardFileSystemManager.java:195) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  ... 20 more 
02-06 16:22:29.724: ERROR/Fatal Error(20515): Caused by: java.lang.ClassNotFoundException: org.apache.commons.vfs2.provider.local.DefaultLocalFileProvider in loader [email protected] 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.ClassLoader.loadClass(ClassLoader.java:573) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at java.lang.ClassLoader.loadClass(ClassLoader.java:532) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  at org.apache.commons.vfs2.impl.StandardFileSystemManager.createInstance(StandardFileSystemManager.java:485) 
02-06 16:22:29.724: ERROR/Fatal Error(20515):  ... 23 more 

好像一些基本的東西是錯誤的安裝,但我不知道它是什麼(Java是不是我的第一語言)。鑑於它是Android項目,是否有什麼特別的事情需要完成?任何指針將不勝感激。

回答

2

我有完全相同的問題。

我得到了公地VFS源代碼的保持和通過代碼到插件初始化跟蹤誤差 - 基本,我們的S3提供的插件正在初始化,即使是沒有必要的。一些時髦的類加載器在S3 JAR中發現vfs-providers.xml並試圖初始化它,即使URL不需要該插件。

一旦我刪除從WEB-INF/lib目錄下的S3提供JAR,它都能正常運作。