【问题标题】:Recover overwritten JAVA file恢复被覆盖的 JAVA 文件
【发布时间】:2015-08-27 13:25:38
【问题描述】:

我正在制作一个 jar 文件,但不小心写了 TimerV1.java 而不是 TimerV1.jar,结果,我的整个源代码被机器代码替换,可悲的是我还有一些东西必须编辑。

我正在使用 Notepad++ 并尝试搜索 Roaming 目录,但那里什么也没有。

我还尝试反编译 jar 文件并编辑导出的源文件(使用 JD-GUI),但是当我尝试编译这些源文件时,我遇到了我什至不知道如何解决的错误。

有什么方法可以恢复我以前版本的 java 文件?

【问题讨论】:

  • 开始使用 git 的好时机
  • @SashaSalauyou 大概是之后开始使用git的好时机
  • 您是否设置了自动定期备份?如果没有,那么您现在知道为什么应该这样做了。如果有,请从备份光盘/文件夹/其他文件中恢复最新版本。它可能不会完全是最新的,但它会给你一个良好的开端。
  • 您可能想尝试不同的反编译器。我对这个很幸运 - bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler,还有一些其他替代品的链接。但与上述 cmets 一样,版本控制是您的朋友,即使对于个人项目也是如此。
  • @rossum 不幸的是没有。我刚刚吸取了教训。

标签: java recover


【解决方案1】:

您可以使用 JAD(Java 反编译器),但.. 并非所有代码都可以反转为源代码。

尝试以下之一:

【讨论】:

  • 感谢这些建议
  • @FriencyLoriagaFernandez 如果有帮助,请接受这个答案:)
  • 我使用了另一个反编译器,但仍然感谢。我投了赞成票。
【解决方案2】:

我自己不使用记事本++,但似乎有一个备份文件夹,其中保存了旧版本的编辑文件:

C:\Users\<user>\AppData\Roaming\Notepad++\backup

【讨论】:

  • 我检查过了,但它是空的。 >_
【解决方案3】:

我认为有各种实用程序可以恢复已删除的文件,因为通常它们仍然存在,但操作系统将该空间列为未分配。但是被覆盖的文件......我希望我有一个更好的答案,但我不知道它们是否可以恢复,除非某些版本保存在某个地方。

如果它是一个相对较短的文件,也许最好的办法是把它当作一个痛苦的机会,使用像 Carbonite 或 Dropbox 这样的备份服务,并使用像 Git 或 SVN 这样的版本控制。

【讨论】:

    【解决方案4】:

    没关系。我用了另外一个反编译器,一一调试。感谢那些回答的人:) 我用Cavaj Decompiler

    【讨论】:

      猜你喜欢
      • 2014-04-07
      • 2013-10-19
      • 2019-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 2013-01-30
      相关资源
      最近更新 更多