Java 从运行中的应用程序恢复Jar
上下文:我有一个Maven应用程序正在运行,但是已经删除了它正在运行的目录以及所有代码 问题:有可能在某处找到正在运行的.jar吗?我知道如果我这样做了,我可以通过反编译器运行它,并将代码取回Java 从运行中的应用程序恢复Jar,java,linux,bash,maven,jar,Java,Linux,Bash,Maven,Jar,上下文:我有一个Maven应用程序正在运行,但是已经删除了它正在运行的目录以及所有代码 问题:有可能在某处找到正在运行的.jar吗?我知道如果我这样做了,我可以通过反编译器运行它,并将代码取回 编辑:更多上下文。我运行了应用程序。然后,当应用程序运行时,整个目录被删除。要运行的命令是./mvnw spring boot:run,因此我在maven存储库中找不到该包。我不确定jar文件。但是,正在运行的应用程序的各个类是可恢复的 我认为没有什么选择 您可以转储整个进程内存,并使用工具分析其内容 您
编辑:更多上下文。我运行了应用程序。然后,当应用程序运行时,整个目录被删除。要运行的命令是./mvnw spring boot:run,因此我在maven存储库中找不到该包。我不确定jar文件。但是,正在运行的应用程序的各个类是可恢复的 我认为没有什么选择 您可以转储整个进程内存,并使用工具分析其内容 您还可以编写Java代理从运行的JVM实例中提取类 或者您可以使用诸如浏览加载的类并手动保存它们之类的工具 一旦您恢复了类,将它们组装到一个jar中就很简单了
另请参见:您正在运行一个已删除的jar文件?ps-ef是否显示任何内容?如果您使用
mvn install
构建应用程序,您可以在maven本地存储库中检索jar。通常在.m2/repository
下查看您的用户目录,那么您可能从未运行过mvn install
。