4

我创建了一个在 Windows 上运行的 jar。在这个 jar 中,我与 Cognos 系统集成,我们正在使用 Oracle 数据库进行一些文件写入和一些数据库操作。

我的任务是检查 jar 是否可以在 Linux 系统上运行。

有没有办法检查 Jar 文件是否独立于平台?

我觉得文件写入和数据库操作应该像现在一样运行。但是我仍然不确定Fie。

4

2 回答 2

1

我有一个任务来检查 jar 是否可以运行 Linux 系统。有没有办法检查 Jar 文件是否独立于平台?

唯一确定的方法是将其安装在 Linux 系统上,并对所有功能进行全面测试。(如果这太繁重,至少测试所有可能依赖于平台的功能。)


作为记录,有很多事情可以使您的代码平台依赖,包括:

  • 将换行符硬连接到您的代码中,
  • 将路径名硬连接到您的代码中,
  • 在组装路径名时假设 Windows(或 Linux)文件分隔符/路径名语法,
  • 与 Windows 文件锁定和其他特定于平台的文件系统行为有关的东西,
  • 将外部命令名称硬连接到您的代码中,
  • 使用本机代码库,
  • 对输入/输出编码做出假设(例如,假设默认为 UTF-8 或其他),
  • Swing GUI 渲染和(偶尔)行为中的奇怪事情,
  • 可能还有其他我没有想到的。

确保您没有错过任何事情的唯一方法是测试,测试,测试

于 2012-11-22T07:11:15.463 回答
1

在 linux 或 mac 上检查它,但您需要检查一些依赖于平台的东西,例如使用正确的路径分隔符进行文件操作、换行符

您可以使用java.io.File.separatorCharSystem.getProperty("path.separator");路径分隔符和System.getProperty("line.separator");换行符。

于 2012-11-22T07:11:43.183 回答