Buggy code:
public class Installer { private JFrame frmremoteInstaller ; private JTextField txtBrowse ; public static final String NAME = "MicroRemote" ; public static final String DONETEXT = "Done" ; public static String MMPATH = "" ; JFileChooser fmAR = new JFileChooser ( ) ; final JButton btnBrowse = new JButton ( "browse" ) ; JLabel lblErrorNull = new JLabel ( "File<seq2seq4repair_space>does<seq2seq4repair_space>not<seq2seq4repair_space>exist" ) ; JLabel lblErrorBroken = new JLabel ( "MicroManager<seq2seq4repair_space>version<seq2seq4repair_space>broken" ) ; JLabel lblPleaseChooseThe = new JLabel ( "Please<seq2seq4repair_space>choose<seq2seq4repair_space>the<seq2seq4repair_space>location<seq2seq4repair_space>where<seq2seq4repair_space>you<seq2seq4repair_space>have<seq2seq4repair_space>installed<seq2seq4repair_space>MicroManager" ) ; JLabel lblAccesDenied = new JLabel ( "Acces<seq2seq4repair_space>Denied" ) ; public static void main ( String [ ] args ) { } public Installer ( ) { } private void initialize ( ) { frmremoteInstaller = new JFrame ( ) ; frmremoteInstaller . setTitle ( "µRemote<seq2seq4repair_space>Installer" ) ; frmremoteInstaller . setBounds ( 100 , 100 , 434 , 195 ) ; frmremoteInstaller . setDefaultCloseOperation ( JFrame . EXIT_ON_CLOSE ) ; frmremoteInstaller . getContentPane ( ) . setLayout ( null ) ; <START_BUG> InputStream imgStream = Installer . class . getResourceAsStream ( "ic_launcher.png" ) ; <END_BUG> BufferedImage img ; try { img = ImageIO . read ( imgStream ) ; frmremoteInstaller . setIconImage ( img ) ; } catch ( IOException e1 ) { } lblPleaseChooseThe . setBounds ( 23 , 10 , 385 , 32 ) ; frmremoteInstaller . getContentPane ( ) . add ( lblPleaseChooseThe ) ; txtBrowse = new JTextField ( ) ; txtBrowse . setBounds ( 10 , 54 , 293 , 20 ) ; frmremoteInstaller . getContentPane ( ) . add ( txtBrowse ) ; txtBrowse . setColumns ( 10 ) ; fmAR . setFileFilter ( new FileFilter ( ) { @ Override public String getDescription ( ) { return "Directories" ; } @ Override public boolean accept ( File f ) { if ( f . isDirectory ( ) ) return true ; return false ; } } ) ; fmAR . setFileSelectionMode ( JFileChooser . DIRECTORIES_ONLY ) ; btnBrowse . addMouseListener ( new MouseAdapter ( ) { @ Override public void mouseClicked ( MouseEvent arg0 ) { lblAccesDenied . setVisible ( false ) ; int value = fmAR . showOpenDialog ( btnBrowse ) ; if ( value == ( JFileChooser . APPROVE_OPTION ) ) { File file = fmAR . getSelectedFile ( ) ; lblErrorNull . setVisible ( false ) ; lblErrorBroken . setVisible ( false ) ; Installer . MMPATH = file . getAbsolutePath ( ) ; txtBrowse . setText ( Installer . MMPATH ) ; } } } ) ; btnBrowse . setBounds ( 313 , 53 , 89 , 23 ) ; frmremoteInstaller . getContentPane ( ) . add ( btnBrowse ) ; JButton btnInstall = new JButton ( "install" ) ; btnInstall . addMouseListener ( new MouseAdapter ( ) { @ Override public void mouseClicked ( MouseEvent arg0 ) { lblAccesDenied . setVisible ( false ) ; JButton thisBtn = ( ( JButton ) ( arg0 . getSource ( ) ) ) ; if ( thisBtn . getText ( ) . equals ( Installer . DONETEXT ) ) { System . exit ( 0 ) ; } String mmPath = txtBrowse . getText ( ) ; File mmFolder = new File ( mmPath ) ; File mmpluginsFolder = new File ( ( mmPath + "//mmplugins" ) ) ; File mmjarsFolder = new File ( ( mmPath + "//plugins//Micro-Manager" ) ) ; if ( mmFolder . exists ( ) ) { lblErrorNull . setVisible ( false ) ; if ( ( mmjarsFolder . exists ( ) ) && ( mmpluginsFolder . exists ( ) ) ) { lblErrorBroken . setVisible ( false ) ; thisBtn . setText ( "Installing..." ) ; new File ( ( ( mmPath + "//mmplugins//" ) + ( Installer . NAME ) ) ) . mkdirs ( ) ; copyFileFromResource ( ( ( Installer . NAME ) + ".jar" ) , ( ( ( ( ( mmPath + "//mmplugins//" ) + ( Installer . NAME ) ) + "//" ) + ( Installer . NAME ) ) + ".jar" ) ) ; copyFileFromResource ( "rxtx-2.2.jar" , ( mmPath + "//plugins//Micro-Manager//rxtx-2.2.jar" ) ) ; copyFileFromResource ( "rxtxParallel.dll" , ( mmPath + "//rxtxParallel.dll" ) ) ; copyFileFromResource ( "rxtxSerial.dll" , ( mmPath + "//rxtxSerial.dll" ) ) ; copyFileFromResource ( "librxtxSerial.jnilib" , ( mmPath + "//librxtxSerial.jnilib" ) ) ; copyFileFromResource ( "qrgen-1.2.jar" , ( mmPath + "//plugins//Micro-Manager//qrgen-1.2.jar" ) ) ; copyFileFromResource ( "zxing-1.7-core.jar" , ( mmPath + "//plugins//Micro-Manager//zxing-1.7-core.jar" ) ) ; copyFileFromResource ( "zxing-1.7-javase.jar" , ( mmPath + "//plugins//Micro-Manager//zxing-1.7-javase.jar" ) ) ; txtBrowse . setEnabled ( false ) ; btnBrowse . setEnabled ( false ) ; lblPleaseChooseThe . setVisible ( false ) ; thisBtn . setText ( Installer . DONETEXT ) ; } else { lblErrorBroken . setVisible ( true ) ; } } else { lblErrorNull . setVisible ( true ) ; } } } ) ; btnInstall . setBounds ( 253 , 115 , 155 , 32 ) ; frmremoteInstaller . getContentPane ( ) . add ( btnInstall ) ; lblErrorNull . setVisible ( false ) ; lblErrorNull . setBounds ( 20 , 85 , 117 , 14 ) ; frmremoteInstaller . getContentPane ( ) . add ( lblErrorNull ) ; lblErrorBroken . setVisible ( false ) ; lblErrorBroken . setBounds ( 23 , 85 , 171 , 14 ) ; frmremoteInstaller . getContentPane ( ) . add ( lblErrorBroken ) ; lblAccesDenied . setVisible ( false ) ; lblAccesDenied . setBounds ( 20 , 85 , 117 , 14 ) ; frmremoteInstaller . getContentPane ( ) . add ( lblAccesDenied ) ; } public void copyFileFromResource ( String res , String aimPath ) { } }

Fix:
InputStream imgStream = Installer . class . getResourceAsStream ( "icon.png" ) ;