如何在Windows中编写Java代码并在Linux中编译和运行

Bei*_*ier 3 java

我是一名新的Java开发人员,想知道是否可以使用Eclipse在Windows中编写Java代码,并且代码实际上是在Linux上编译和运行的.我需要为Linux(Ubuntu)环境编写java程序,但我习惯用Windows进行开发.

我正在考虑使用Samba进行文件共享,因此我可以使用Windows来访问驻留在Ubuntu中的源代码.但是当我编译代码时,它实际上使用Windows JVM,而不是Ubuntu JVM,那会有关系吗?此外,当我需要包含驻留在Ubuntu中的外部JAR库时,路径实际上类似于E:\ home\java\project\abc.jar,其中E:drive是来自Samba的映射网络驱动器.所以当我在Ubuntu上运行程序时,将不再有任何D:驱动器.

所以我有点困惑,想知道这是否可行.任何帮助将非常感激

Bri*_*new 8

因为Java与平台无关,所以编译的位置与运行的位置无关.所以你可以在Windows下编译并在Linux上运行没有问题.

您需要在Linux机器上以及 Windows机器上创建库的副本.这些都无关紧要,但需要通过环境变量引用它们CLASSPATH.

所以在Windows上,你CLASSPATH看起来像:

CLASSPATH=d:\jars\abc.jar;d:\jars\def.jar
Run Code Online (Sandbox Code Playgroud)

在Unix/Linux上,它看起来像:

CLASSPATH=/home/user/lib/abc.jar:/home/user/lib/def.jar
Run Code Online (Sandbox Code Playgroud)

(注意结肠和分号之间的变化).

鉴于以上情况,正在运行

java MyApp.jar
Run Code Online (Sandbox Code Playgroud)

将在两个平台上工作.全局设置CLASSPATH可能会影响不同的Java实例,因此您可能希望在调用每个程序的shell脚本中进行设置.或者您可以CLASSPATH在命令行中指定例如

java -cp /home/user/lib/abc.jar:/home/user/lib/def.jar
Run Code Online (Sandbox Code Playgroud)


fir*_*umb 7

您应该使用Eclipse for Development IDE并将依赖jar作为相对而非完整目录链接添加.您可以在Windows上编译并在Linux上运行.不要紧.