2

I have to develop some websites, the software is using STS or Rational IBM. I'm using Windows 7 32 bit but the Rational IBM is needed too much RAM, so I want to upgrade to win 64bit to use 8GB RAM. But, I'm not sure if my teammates or the customer - who using at last - they are using win 32 bit. Can they exchange code with me (using SVN)? Any differences between project or WAR file? Can 32bit system can run project?

The same question with .NET project? It will build .dll files, I think they are many differences between .dll 32bit and .dll 64bit.

Thanks for reading.

Machavity
  • 30,841
  • 27
  • 92
  • 100
ntlam
  • 323
  • 1
  • 2
  • 15

2 Answers2

1

Pure Java is platform indepependent. It used on any project different platform which has a Java Runtime Environment (JRE). Oracle (Sun) provides the JRE implementation for major known platform architectures and OS. More overe, there's any thirdparty JRE instances which comply Java specs. All of these JREs will run your bytecoded projects.

Yes, they could share the code with you, either you running x86 or x64 processor architecture. Just uses different JRE implementation, but it should not concirn your project if it's 100% pure Java certified. You could consult the Oracle about get certification for your Java project.

I have nothing to know about .NET, but if it used with the Java project then you may have incompatibilities between platforms.

dlls ofcourse are different which built for different platforms, however you could run 32 bit dlls on x64 platform under the wow64 architecture.

Roman C
  • 49,761
  • 33
  • 66
  • 176
  • Thank you. So did you mean I can use x64 , use IDE 32bit, code and deploy then bring code to my x86-customer ? Are you sure it can run fluently ? – ntlam Aug 17 '13 at 13:22
  • Without knowing your project I can't say more, and IDE 32bit can run on x64 platform. – Roman C Aug 17 '13 at 13:41
  • my project is a Portal Website, Strust2 and must use IDE Rational IBM – ntlam Aug 17 '13 at 14:18
  • IDE Rational IBM is platform dependent, "my project is a Portal Website, Strust2" has no meaning it should be 100% pure Java certified to be platform independent. – Roman C Aug 17 '13 at 14:50
  • Download and read [this](http://www.oracle.com/technetwork/java/100percentpurejavacookbook-4-1-1-150165.pdf) book. – Roman C Aug 17 '13 at 15:06
1

.NET compiles for Win32 (32 bit) by default, even if the operating system is a 64 bit version. So no problem on this. If you compile for x64 you will be able to exchange your code, but your binaries will only run on a 64 bit installation. Even so, unlikely C/C++, a source code can easily be compiled for both Win32 and x64 with no changes.

The same goes for Java, 2 different versions of the JVM exist, for 32 and 64 bit Windows. You can install both of them without any issue. If you want to code 32 bit applications, you have to install a 32 bit JDK. You might experience some minor issues with the IDEs, so maybe you'll need to download both JDKs, but your code will be portable anyway.

EDIT

I don't know what kind of issued I was remembering. As it was said in the comments, .NET and Java are compiled to platform-neutral bytecode, which means that not only the source code, but also the compiled binaries, can be shared among different platforms (x64 or x86).

If you are using native code, or third-party libraries that use platform-specific native code, it might be more complicated, because you have to deploy the native code compiled for the right architecture.

Giulio Franco
  • 3,170
  • 15
  • 18
  • 1
    Your Java comments don't seem right. If someone creates a pure Java program in a 64 bit environment, it should run *fine* on a 32 bit machine. You must understand that when Javac compiles a Java program, it creates bite code, not machine code, and this bite code will be the same whether created with 64 bit JDK or 32 bit. -1. – Hovercraft Full Of Eels Aug 17 '13 at 12:28
  • @HovercraftFullOfEels nope, it does not. I'm not 100% sure, but I remember that 64 bit Java does not run on a 32 bit JVM. I'm going to double-check, anyway, because your comment definitely makes sense. Maybe Eclipse is not pure Java (SWT may use some JNI), but separate 32bit and 64bit versions exist... – Giulio Franco Aug 17 '13 at 13:19
  • 1
    Pure Java compiled bit code is neither 32 bit nor 64 bit. Eclipse is something entirely different now since it uses native code libraries. – Hovercraft Full Of Eels Aug 17 '13 at 13:20
  • Thank Giulio Franco and Hovercraft Full Of Eels. So did you mean I can use x64 , use IDE 32bit, code and deploy then bring code to my x86-customer ? Are you sure it can run fluently ? – ntlam Aug 17 '13 at 13:24
  • @NguyễnThànhLâm I think it should be x64, the appropriate version of the IDE, and normal code. Unless you're using native code, the code is the same, and it can run on whatever platform (x86, x64, ARM, Itanium). In the worst case, you'll have to fight with the compiler, but the source code is the same. These languages are portable, the code doesn't need any change to be ported to another platform. – Giulio Franco Aug 17 '13 at 13:27
  • @Giulio : Do you have any advise about JDK ? x86 or x64 ? – ntlam Aug 17 '13 at 13:35
  • @ntlam I just fixed my answer, because it was wrong. Unless you're using native code, it makes absolutely no difference which platform you code and compile on. Use whatever is better for you. – Giulio Franco Aug 17 '13 at 13:39