一个模糊的问题,但我们走了:
我有一个Java应用程序,它在Windows上执行100%,但是,当上传到运行Linux的服务器时,应用程序仍然运行,只是不正确。我知道它不是文件路径或文件名,但是windows和linux之间的一些关键区别是什么可能导致应用程序在其中一个上行动起来?
我不想直接回答我的问题,(因此不会发布代码或应用程序在做什么)我只是对可能导致这样的问题更感兴趣并且无法找到在任何地方列出。
任何输入都将非常感谢!
答案 0 :(得分:2)
文件路径不匹配(即C:\\Users\\
而不是/tmp
)。文件分隔符差异通常会破坏硬编码的程序,而不是动态加载它。
此外,任何事都与exec()
一起运行,因为要执行的命令会有所不同。
你的帖子说“我知道它不是文件路径或文件名”,但没有任何代码或示例,这几乎是关键错误。 Java旨在独立于平台,绝大多数代码不受操作系统的影响,因为JVM将为该机器生成适当的字节码。