我有一个文件Main.jar(Swings App),它是可执行jar。这个Jar依赖于Code.jar,它取决于某些环境。打包后,文件结构如下:
Main.jar
lib
|_____Code.jar
现在在Main.jar中有一个逻辑,根据环境要求更新Code.jar并替换lib文件夹中的Code.jar文件(在我的程序的第一个屏幕中)。我已经验证了Jar的清单文件。
我在主程序的第三个屏幕上需要Code.jar文件中的类。
问题:
我无法删除文件夹中已存在的Code.jar文件。这可能是因为依赖所以我在启动程序之前使用cmd将其删除。
有什么方法可以删除代码中的文件而不是使用cmd
当我使用cmd删除jar文件,并在lib文件夹中移动一个新的Code.jar时,它会为Code.jar中的类抛出java.lang.NoClassDefFoundError
。即使Code.jar存在于lib文件夹中。
出现此错误的原因是什么?