title: Cannot load 64-bit SWT libraries on 32-bit JVM ( replacing SWT file )
body: <p>I'm trying to debug this problem but not sure where exactly i need to <strong>replace SWT jar</strong> file for Eclipse. </p>
  
  <p>Current System Config:</p>
  
  <pre><code>Eclipse Helios 3.6 - 32 Bit
  JDK 1.6 
  JVM - 32 Bit 
  Windows 7 - 64 Bit
  </code></pre>
  
  <p>Error Message: </p>
  
  <pre><code>java.lang.UnsatisfiedLinkError: Cannot load 64-bit SWT libraries on 32-bit JVM
      at org.eclipse.swt.internal.Library.loadLibrary(Library.java:194)
      at org.eclipse.swt.internal.Library.loadLibrary(Library.java:174)
      at org.eclipse.swt.internal.C.&lt;clinit&gt;(C.java:21)
      at org.eclipse.swt.widgets.Display.&lt;clinit&gt;(Display.java:138)
      at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:687)
      at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161)
      at de.vogella.rcp.intro.first.Application.start(Application.java:18)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
      at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
      at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
  An error has occurred. See the log file
  </code></pre>
  
  <p>Workaround: </p>
  
  <ol>
  <li><p><a href="https://stackoverflow.com/questions/2921193/swt-on-windows-64-bit">Link1</a>: Understood the cause of the problem and i tried to replace 64-bit SWT to 32 Bit but i'm not sure whether i'm doing it right ?</p>
  
  <p>downloaded 32-bit file swt-3.6.1-win32-win32-x86.zip
   Extracted the zip file 
   Have files as shown below </p>
  
  <p><img src="https://i.stack.imgur.com/6SpHE.jpg" alt="enter image description here"></p>
  
  <p>copied swt.jar file 
   navigated to C:\Program Files\eclipse\plugins
   removed 64-bit Swt file ( i.e org.eclipse.swt.win32.win32.x86_64.source_3.6.2.v3659c )
   placed copied swt.jar file and relaunched </p>
  
  <p><strong>Still throws SAME ERROR</strong> </p>
  
  <p>also tried renaming the swt.jar file to org.eclipse.swt.win32.win32.x86_64.source_3.6.2.v3659c </p>
  
  <p><strong>Still same ERROR</strong></p></li>
  <li><p><a href="http://www.badprog.com/eclipse-standard-widget-toolkit-swt-installation" rel="noreferrer">Link2</a>: Suggested the alternative solution but couldn't resolve the problem. </p>
  
  <p><strong>Still same ERROR</strong> </p></li>
  <li><p>I really don't want to uninstall 32-JVM and 32-Bit Eclipse and install corresponding 64 Bit versions. </p>
  
  <p><strong>Not an OPTION</strong> </p></li>
  </ol>
  
  <p>Workaround After the <strong>paulsm4</strong> and <strong>Paul Webster</strong> response &amp; <strong>i'm confused</strong> </p>
  
  <p>When i tried executing this to check JVM, JRE version in Eclipse</p>
  
  <pre><code>package javaVersion;
  
  public class JavaVersion
  {
  
      public static void main( String[] args )
      {
          System.out.println( "JRE Version :" + System.getProperty( "java.runtime.version" ) );
          System.out.println( "JVM Bit size: " + System.getProperty( "sun.arch.data.model" ) );
  
      }
  
  }
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>1.6.0_31-b05
  JVM Bit size: 32
  </code></pre>
  
  <p>However when i tried on command line for JAVA - VERSION</p>
  
  <p><img src="https://i.stack.imgur.com/2a1gL.jpg" alt="enter image description here"></p>
  
  <p>So my understanding system has 64bit JVM where as Eclispe is reading 32 Bit JVM. So how can i divert system to read 32 Bit JVM ?</p>