如何反序列化来自另一个项目的类的对象?

时间:2015-04-10 18:46:46

标签: java eclipse android-studio

我想将我在Eclipse中创建的类导入到Android Studio中的项目中。我一直在Eclipse中开发一个项目,它涉及一个名为WordList的自定义类,我已将此类的实例序列化为二进制文件。

现在,我刚刚开始学习android编程,我想制作一个使用这个文件的应用程序。我想使用这样的东西来读取该文件中的WordList对象:

ObjectInputStream in = new ObjectInputStream( new FileInputStream(new File( /*file name*/ ))); return (WordList) in.readObject();

但是为了做到这一点,程序当然需要了解WordList课程,否则我会在演员阵容中获得ClassNotFoundException。我首先要做的是在Android项目中创建一个新的WordList类,它只是Eclipse项目中的一个副本,但后来我得到了这个例外:

java.lang.ClassNotFoundException: Didn't find class "package_name.WordList" on path: DexPathList[[zip file "/data/app/my_project_directory-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

显然,这两个相同的WordList类实际上并不完全相同。为什么会这样?有没有办法让我将类从Eclipse项目导入到Android Studio项目中,这样我才能使用同一个类?或者有没有办法让程序意识到文件实际上包含一个序列化的WordList对象?

1 个答案:

答案 0 :(得分:0)

将原始类和其他类包装到jar文件中,并将其作为客户端/ lib jar提供给另一个