FreeMind Version 1.0.0 RC5

2013-09-11
2013-10-09
  • Dear FreeMind users,

    the (next hopefully last) release candidate R5 before realasing version 1.0.0 is available under

    http://sourceforge.net/projects/freemind/files/freemind-unstable/1.0.0_RC5/

    The release fixes some bugs, especially concerning the new folding circles.

    If you plan to add a translation, then hurry up.

    Have fun,

    Chris

    The complete list of changes:

    ===============================
    Changes made in FreeMind 1.0.0 RC 5
    ===============================
    Anti-alias for folding circles fixed
    Folding buttons can be switched off.
    Corrected folding buttons for filtered maps (https://sourceforge.net/p/freemind/discussion/320014/).
    Fixed edge width for fork nodes.
    Fixed note icon to appear after paste.
    Fixed menu items: edge styles and widths are selected in the menu, now.
    Only changed properties are save to the auto.properties file.
    Fix: Quicklook for mac. Thanks for the patch!

     
  • jonippolito
    jonippolito
    2013-09-16

    Christian,

    I teach in a university new media department and up to now have used FreeMind as a sort of "boutique" software to show students how digital tools can help them brainstorm. Now that 1.0.0 RC5 promises real-time collaboration, however, I can envision the tool having a much more valuable use across many scales and contexts for collaboration.

    Among other purposes, it seems like FreeMind's collaboration feature would be a great platform to help creators looking for ideas brainstorm with each other--even if they're not in the same room.

    Trouble is, I'm a bit of a network n00b and don't understand the syntax for the Tools > Share Map and Join Map options. I'm assuming the Password can be an arbitrary character string, but what is expected by:

    • To share:
      plugins.collaboration.socket.SocketBasics.password_verification?

    • To join:
      Host?

    It's also unclear whether I can just share maps over a local wireless router or whether I need to upload them to a server or WebDav.

    For reference, I'm on a 2012 MacBook Pro running OS10.8.4 over a university LAN connection.

    Thanks for any advice!

    jon

     
  • Hi,

    password_verifaction: you have to repeat your password to ensure, that it is what you've expected.

    Host: the name or IP address of the host.

    Currently, sharing is only supported in networks, i.e. you have to be able to ping each other by name, and that the ports are reachable. Easiest case: same network. More advanced: routing via DSL router (things like port forwarding and dyndns are needed here). There is no upload at all.

    HTH, Chris

     
  • jonippolito
    jonippolito
    2013-09-17

    Thanks for the prompt response, Chris!

    My students and I will all be on the same wireless network, accessed via a wireless router in the room. I'm assuming from your reply that if I want to share my map I can give out my (dynamically assigned) IP address as discovered using a network utility.

    I'm not sure what being able to ping each other by name means (I can run ping in OS X Terminal but don't know how to discover which names to use).

    I'm also not sure which ports are likely to be open, or how to ensure they are. I notice that FreeMind defaults to port 9,001.

    Like I said, I'm a network n00b :) I appreciate your help, and really do see that FreeMind could become an excellent tool for collaborative brainstorming in the classroom.

    jon

     
  • Hi,

    just try, it should be ok with the IP addresses as well. The port is normally not used under MacOSX.

    Please, tell us, how it will have worked for you.

    TIA, Chris

     
  • Adrien Beau
    Adrien Beau
    2013-10-01

    Hello,

    I just installed 1.0.0rc5 and found several significant issues in the installer and launcher (Freemind.exe).

    • My OS: Microsoft Windows 7 Pro 64-bits
    • My JVM: Oracle Java 1.7.0_40 Server VM 64-bits (installed at its default location)
    • My locale: French/France
    • My environment variables:
      • JAVA_HOME=C:\Program Files\Java\jre7
      • JRE_HOME=C:\Program Files\Java\jre7

    As soon as I launch the FreeMind-Windows-Installer-1.0.0_RC_5-max.exe installer, I get the following error in a pop-up:

    Error:
    Java 1.4 or greater not detected. (...) install Java from http://java.sun.com/ - \nContinue with installation?

    The major problem is of course that Java 7 should be properly detected and the message should not appear. Java 7 is the only public release currently supported by Oracle.

    There are also two minor issues in this message: the URL should be http://www.java.com/, and the \n should not be visible.

    After that, another minor issue pops-up in the form of a dialog box asking to accept the GPL. Legally, users do not need to accept the GPL to use the software, at this stage it is more like a statement of their rights. Other projects (VLC if I recall correctly) have moved from asking to just displaying the GPL with a button to go to the next step.

    Finally comes the second major problem: Freemind.exe fails to start, silently. I can find no easy way to diagnose this (but maybe you have some suggestions). All I can say is that java runs fine from the command-line, and that Freemind.bat runs fine (with lots of log messages about missing translations, if I understood correctly), and that freemind.jar runs fine.

    Hope this helps. I can open tickets for these various issues if you want.

    Adrien

     
    • Hi,

      thanks for your suggestions. I'll have a look, soon. Question: is javaw running from a usual command line? This is the major difference between bat and exe.

      TIA, Chris

       
      • Adrien Beau
        Adrien Beau
        2013-10-08

        Entering the FreeMind install directory and running javaw -Xmx256M -Xss8M -cp lib\freemind.jar;lib\commons-lang-2.0.jar;lib\forms-1.0.5.jar;lib\jibx\jibx-run.jar;lib\jibx\xpp3.jar;lib\bindings.jar;lib\xalan.jar;lib\serializer.jar;lib\xml-apis.jar;lib\xercesImpl.jar;lib\jortho.jar freemind.main.FreeMindStarter from the command-line works. (This command line was taken from the bat file, and java replaced with javaw.) FreeMind starts just fine.

         
        • Hi,

          the command line used in freemind.exe is different. Please, try:
          javaw.exe -Xmx256M -jar lib\freemind.jar

          Acoording to the java7 detection, please report the contents of the registry key: 'HKEY_LOCAL_MACHINE_64\SOFTWARE\JavaSoft\Java Runtime Environment'. This is compared with 1.4 up to 1.7. In your case, it must contain something different.

          TIA, Chris

           
          • Adrien Beau
            Adrien Beau
            2013-10-08

            Running javaw.exe -Xmx256M -jar lib\freemind.jar from the command-line (in the C:\Program Files (x86)\FreeMind directory) works fine. FreeMind starts. :)

            Here is what I see using %systemroot%\syswow64\regedit (32-bits registry view, according to Microsoft KB #305097):

            HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Prefs
              (empty)
            

            Here is what I see using regedit (64-bits registry view):

            HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
              REG_SZ BrowserJavaVersion = 10.40.2
              REG_SZ CurrentVersion = 1.7
              REG_SZ Java7FamilyVersion = 1.7.0_40
            
            HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7
              REG_SZ JavaHome = C:\Program Files\Java\jre7
              REG_SZ MicroVersion = 0
              REG_SZ RuntimeLib = C:\Program Files\Java\jre7\bin\client\jvm.dll
            
            HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_40
              REG_SZ JavaHome = C:\Program Files\Java\jre7
              REG_SZ MicroVersion = 0
              REG_SZ RuntimeLib = C:\Program Files\Java\jre7\bin\client\jvm.dll
            
            HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_40\MSI
              (19 keys for the Java MSI installer, tell me if you want them)
            

            In case it matters, note that the JRE bin directory is not in the PATH. java.exe and javaw.exe are installed in C:\Windows\System32, and they handle finding the current Java version by themselves, using the registry. (This has been the case since at least Java 6 I believe.)

             
  • Hi,

    can you use ProcessMonitor (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx) or similar to see what freemind.exe does?

    TIA, Chris

     
    Last edit: Christian Foltin 2013-10-08
    • Adrien Beau
      Adrien Beau
      2013-10-08

      I've traced the activity of Freemind.exe using ProcessMonitor, and I think I found why it does not find javaw.exe although it is in the PATH.

      Here's my PATH (one entry per line):

      C:\Windows\system32;
      C:\Windows;
      C:\Windows\System32\Wbem;
      C:\Windows\System32\WindowsPowerShell\v1.0\;
      C:\Program Files (x86)\Lenovo\Access Connections\;
      C:\Program Files (x86)\GTK2-Runtime\bin;
      C:\Program Files\smartmontools\bin
      

      And here's what Freemind.exe looked for (first entry is current directory):

      C:\Program Files (x86)\FreeMind\javaw.exe
      C:\Windows\SysWOW64\javaw.exe
      C:\Windows\javaw.exe
      C:\Windows\SysWOW64\wbem\javaw.exe
      C:\Windows\SysWOW64\WindowsPowerShell\v1.0\javaw.exe
      C:\Program Files (x86)\Lenovo\Access Connections\javaw.exe
      C:\PROGRAM FILES (X86)\GTK2-RUNTIME\bin\javaw.exe
      C:\PROGRAM FILES\SMARTMONTOOLS\bin\javaw.exe
      

      All these attempts ended in a NAME NOT FOUND result. Actually, javaw.exe is in C:\Windows\System32.

      As explained in this StackOverflow answer, 32-bits programs that look into System32 are transparently redirected to SysWOW64, which is where 32-bit libraries are stored on 64-bits Windows versions. Being a 64-bits binary, javaw.exe is not stored there and simply not found by Freemind.exe.

      While this may be nice for DLLs, this is a problem for executables. There must be a way for a 32-bits program to look into the real System32 directory, but I don't know it.

       
      • Hi,

        great analysis. Thanks for your effort! This means, that we need freemind.exe as a 64bit binary on 64bit systems? Or is there another workaround?
        TIA, Chris

         
        • Adrien Beau
          Adrien Beau
          2013-10-09

          I think the core issue is a problem with the JRE, considering the System32/SysWoW64 complications, they should put the executable in C:\Windows. :-/

          I have found a workaround, discussed in this MSDN Q&A: a 32-bit application can use the name C:\Windows\Sysnative to access the real C:\Windows\System32 directory. (What a confusing mess!)

          I don't know how the current executable is coded, and how much it depends on third-party code you cannot easily modify. You could try changing System32 to Sysnative in the PATH before you iterate over the entries, or you could just look into %windir%\Sysnative after the PATH search fails. Maybe creating a separate 64-bit executable is easier?

           
          • Hi Adrien,

            can you please try out the (inofficial!!) installer under ... (deleted, as it was inofficial).

            This should detect your 64bit java and install a different freemind.exe that is 64bit actually.

            TIA, Chris

             
            Last edit: Christian Foltin 2013-10-10
            • Adrien Beau
              Adrien Beau
              2013-10-09

              It works!

              The installer correctly found my JRE, everything was installed correctly. As expected, the files ended up in C:\Program Files (used by 64-bits programs) rather than C:\Program Files (x86) (used by 32-bits programs).

              Once installed, FreeMind.exe correctly found javaw.exe in the C:\Windows\System32 directory, and FreeMind started just fine.

               
  • I think, I've found the issue with the installer. Thanks for your report. But I would like to fix the other issue, too. Br, Chris

     
  • Hi guys

    I have just found this discussion.
    I am running win 8 pro 64.
    When I downloaded and installed FreeMind I had the same difficulties as Adrien.
    My quick & dirty fix was to download and install an x86 JRE version.
    FreeMind now starts without problems on my current set up.

    I regard this as a temporary fix to get the x86 version of the software running while Christian sorts out the 64 bit issues.

    TTFN
    Lindsay

     
  • Hi,

    just a hint: Freeplane uses no 64 bit exe. We generate our starter exe with launch4j instead of using a proprietary launcher app. It is responsible for finding and configuring java. Our launch4j configuration files are available at https://github.com/freeplane/freeplane/tree/master/freeplane_framework/launch4j .

    Regards, Dimitry

     
    • Hi Dimitry,

      thanks for the hint. I'll have a look at it at the next release.

      Br, Chris