在.ser文件创建之后,可以编辑.ser java文件中使用的类吗?

时间:2015-08-15 02:37:41

标签: java file-handling serializable

我正在尝试加载我之前做过的类的.ser文件。

但我得到了ClassNotFoundException

我想知道,是因为我对这些文件中使用的类进行了更改? 因为类名是相同的,所以唯一的变化是一些新的方法。

如果是这种情况,有没有办法加载.ser文件,这些文件在创建后更改了类?

java.lang.ClassNotFoundException: ebay.ItemEditObject
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at java.io.ObjectInputStream.resolveClass(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at ebay.EbayMaster.getObjFromFile(EbayMaster.java:750)
at ebay.EbayMaster.createItemsForUpload(EbayMaster.java:340)
at ebay.EbayMaster.ebayRunner(EbayMaster.java:129)
at ebay.EbayMaster.main(EbayMaster.java:92)

1 个答案:

答案 0 :(得分:1)

  

我想知道,是因为我对这些文件中使用的类进行了更改吗?

没有

  

因为类名相同,所以唯一的变化是一些新方法。

这可能导致InvalidClassException。不是ClassNotFoundException

但是你没有得到这些。你得到FileNotFoundException.找不到该文件。再看一遍。

相关问题