DeNova JExpress: Installer and updater tools and service

Download    |    Features    |    FAQ    |    Prices    |    Order    |    Help        Search:
 

JExpress Release Notes

Current Release: 7.1.7              Which version am I running?
 

Note to existing customers: If you are using 7.1.2 or earlier, please read these important details about upgrading to the latest release.

7.1.7
  • Accept distribution url's that contain spaces.
  • Changed generated web pages so they do not use iframes.
  • Replace radio buttons with push buttons on JExpress' welcome dialog.
  • Fixed silent installs.
  • Use blueprint.css in formatting webpages.
  • Fixed unattended build directory when passed on command line.
  • Display new project settings more smoothly, quickly.
7.1.6
  • Create sub-tabs on the Custom tab so ther's one place to enter custom classes.
  • Specify custom classes for uninstaller through gui
  • Enter custom classes by selecting them instead of just typing the full classname.
  • Fixed bug in adding custom classes to the updater.
  • Accept custom classes that have setActive() methods with 2 parameters for backward compatibility.
  • Improved tutorials.
  • Added state info to SwingWorker and Swinger.
  • Improved javadocs for API.
  • Changed logo.
  • When selecting a file in JExpress, default directory to last directory used.
7.1.5
  • Automatically find a new JRE for your app on Windows if the old one is removed.
  • Faster installation.
  • Added anti-aliasing to all fonts.
  • Don't add uninstaller to registry if the command contains non-US ASCII characters. Users can double click on the Uninstall.exe in the application directory. And, you can add the uninstaller to the Windows menu through a custom class (see the WinUninstallMenu class).
  • The uninstaller supports a -d switch followed by the full path for the application to uninstall.
  • Don't save the user interface or current project name if "Update JExpress" selected when starting JExpress.
  • Changed cloader's name to installer for Windows and Mac; changed platform.properties files to match.
  • Made installer much smoother.
  • Added listeners to WizardPanels for notification of Wizard events.
  • Add desktop icon to Windows for every menu item defined.
  • On Windows, the uninstaller deletes the application directory if empty, the next time the system boots.
  • Fixed several layout errors in Wizard and Advanced build interfaces.
  • Improved standrd font choices, especially for Windows.
  • Added start-of-row tracking to GridBagControl, which fixed addVerticalSpace() bug.
7.1.4
  • Don't cache buttons, just icons. Caching buttons created a bug when there were multiple buttons with the same name (e.g., Browse)
  • Specify where uninstaller custom classes are found. All files from the specified directory are automatically included in the uninstaller.
  • Specify where the platforms parent directory is.
  • Select whether to update JExpressUpdater.jar during an update.
    Note to existing customers: JExpress now defaults to not updating the JExpressUpdater.jar so you'll need to change your projects if you want the updater updated when your app is updated.
  • Dialog boxes in JExpress show OK | Cancel | Help buttons in native OS' order
  • Create JVM from an installed version.
  • Display context sensitive help in JExpress in the center of the screen.
  • Changed names of methods in com.denova.ui.Swinger class and added Swinger to the API.
    Note to existing customers: If you're using the Swinger class, be sure to see the API for the name changes.
  • Deprecated setActive() and replaced it with enter() and leave().
7.1.3
  • Merged Builder and Developer.
    Note to existing customers: If you build your installers unattended, then you'll need to change the command line from com.denova.JExpress.Build.JExpressDeveloper to com.denova.JExpress.Build.JExpressAdvanced.
  • Changed the name of installer files created. Now all installers are stored directly in the build directory's installers subdirectory instead of the platforms subdirectory. Also the names are based on the application's name, platform, and version. Note to existing customers: If you create your own html file for your download page, you'll need to adjust the names appropriately. You might want to create your own page which includes the download.html as a frame or a server-side include to minimize work when you create a new version.
  • Create a single index.html that includes jump points for all the installers.
  • Use the installer's image in the index.html.
  • Calculate the file size for each installer and include the details in the index.html.
  • Launch the updater for JExpress from inside JExpress instead of a menu item.
  • Accept multiple selections when adding items to Files, Classes, and Groups tabs.
  • Specify where custom classes are found. All files from the specified directory are automatically included in the installer/updater.
  • Standardized fonts.
  • Changed license panel in installer to require checking "I agree" to continue.
  • Fixed bug so if the project's basedir didn't exist in an unattended build, the command line basedir overrides the project's basedir
  • Fixed a bug for the default install dir in multi-component installers.
  • Updated the Samples to use the submenu.
  • Re-organized JExpress' own application directory.
  • Fixed a bug when building a project with native installers, but the jvm is missing.
  • Eliminated JExpressLoader package and the load class.
  • Fixed a bug so the update-on-demand menu is uninstalled for a multi-component installer.
  • Clear custom updater classes when starting a new project.
  • Don't prompt when user clicks the Exit button in the wizard for JExpress.
  • Fixed some race conditions in the installer.
  • Changed all standard diagnostic log names to use all lower case and renamed a few.
  • Don't add custom uninstaller classes to the full version of JExpress.
  • Submenus added to KDE's predefined menu structure.
  • KDE desktop filenames have spaces stripped to handle bug in KDE menu system.
  • Developers who customize no longer need to create a new thread in WizardPanel.setActive().
  • Deprecated ui.WizardPanel.get<Button>() for most purposes.
  • Changed the name of the updater's main class to JExpressUpdater.
  • Changed the name of the uninstaller's main class to JExpressUninstaller.
  • Cache button icons.
  • Prevent type ahead in the wizards.
  • Don't enable Next button until all field initialized in the wizard.
  • Use html to display long text messages.
  • Only display 1 progress bar in the updater.
  • Created a SwingWorker class that is compatible with Java 1.6, but works in Java 1.4 and 1.5
  • Created SwingCheckerThread so it's easy to find where Swing is being invoked outside the Event Dispatch Thread (i.e., Event Queue).
  • Created Swinger class so you can easily provide feedback to the user, do work in the background, and then provide additional feedback in a thread safe way.
  • Use Swinger and SwingWorker in installer, updater, and uninstaller for increased reliability and speed.
  • Fixed an intermittent bug in Windows menus when there were args passed on the command line.
  • Removed the "Preparing installer wizard" popup message when installer loading.
  • Changed several fields values in the platform.properties files.
    Note to existing customers: If you have changed any of the platform.properties files, then you should apply your changes to the new files.
7.1.2
  • Added a Project Save panel to Builder which suggests a project name.
  • Created a Font class for consistent fonts.
  • Improved word wrapping in dialogs and popup messages.
  • Removed spaces in KDE menus to work-around a KDE bug.
  • Make Next or Install button the default on each install panel so when you type Enter you move to the next panel.
  • Don't pass 2 panels when you type Enter in the installer.
  • Place cursor in first text field of each install panel.
  • Allow the install engineer to define the name of the submenu(s), if any.
    Note to existing customers: You must change your existing projects to specify a submenu unless you want your menus added at the top level. Originally, JExpress always created a submenu using your product name, but now you must enter the name on the Menus tab.
  • Added recent projects to the Files menu.
  • Added Back button to the context sensitive help.
  • Uninstaller now supports [$UserHomeDir] and [$JavaHomeDir] variables.
  • In Developer made Build button default on Build panel.
  • Fixed a bug introduced in 7.1.1 that wouldn't allow the build directory to be a subdirectory of the JExpressProfessional directory.
7.1.1
  • Relative pathnames let developers share projects.
  • Simplified project selection dialog.
  • Launch JExpress Builder after installing JExpress Professional.
  • Add icon to Windows desktop after installation of JExpress Professional.
  • Prompt user if base directory doesn't exist on this system.
  • Drop down list of recent projects in selection dialog.
  • Use java dialog box, instead of a browser, to display context sensitive help.
  • Don't prompt user for the location of the browser.
  • Use san-serif to display JExpress' license.
  • Incorporated data in JExpress readme files into the manual.
  • Eliminated readme dialog from installer for JExpress Professional.
  • Changed the Product tab in Builder/Developer to Welcome.
  • Changed the Product name field to Application name.
  • Removed left over support for JExpress Basic.
  • Changed the Base path field name to Base directory.
  • Show tool tips for the Advanced File Options dialog.
  • Display tool tips near the field instead of the bottom of the tabs.
  • Accept buildir or builddir on Developer's command line to set the build directory dynamically.
  • Spell checked and pretty printed html.
  • Fixed makeInstallerSilent() in CustomInstaller.
  • Don't warn when swing.jar doesn't exist.
  • Pop up warning when unexpected error on startup occurs.
  • Adjust the classpath when the base directory changes.
  • Made javadocs compatible with 1.5
  • Fixed searching for main() if Developer's classpath undefined.
  • Print error messages from Developer and Builder to stderr.
7.1.0
  • Fixed a bug when using the -s parameter with native installers
  • Replaced environment variables in shell folders
  • Added a Final panel to the uninstaller.
7.0.9
  • Support HTML files in the Readme and License. Note to existing customers: We recommend you convert your plain text files to html format otherwise the text may wrap in the middle of a word.
  • Set the default install directory to the user's home Applications or /Users/Shared/Applications subdirectory.
  • Create a copy of the desktop folder/icons in the /Applications subdirectory on Mac, if directory is writeable
7.0.8
  • Remove menus and delete items in Control Panel when uninstalling on Windows.
  • Don't use redirection to get the system path on unix systems.
  • Use the registry to get the environment on Windows.
  • Change %UserProfile% and %AllUsersProfile% to their respective values when getting a Shell Folder from the registry.
  • Hide progress bar at the end of the uninstall.
7.0.7
  • Added a -s switch to installer which causes the installer to be silent and requires the next parameter be the installer's property pathname.
    Note to existing customers: The -q switch must only include the install directory name, not the properties pathname.
  • If CustomUninstaller directory is empty, don't complain while building installer.
  • Added titles to installer's popup dialog boxes.
  • Require that the installation directory include a drive if the target system is Windows.
  • If the target system is Unix, require that the installation directory starts with a file separator.
7.0.6
  • Changed uninstaller into a wizard so custom classes can be added
  • Added example to request feedback during uninstall so you can learn why people are removing your software
  • Added getDesktopDir() to WindowsDir API.
  • During uninstall, if deleting a single file leaves the directory empty, doesn't automatically delete the directory.
  • After creating a KDE menu, issue "kbuildsycoca --noincremental" command to force the menu to appear immediately.
7.0.5
  • When the autoupdater launches the updated app, its icon shows in Mac's dock
  • Fixed bug in KDE/Gnome menu items when program had spaces in it.
  • Fixed command line parsing issue with spaces and quotes.
  • Note to existing customers: If you maintain a copy of platform.properties, then you should change jvmCommandName property's value from jre to java.
7.0.4
  • Added methods to the WindowsRegistry class to support reading/writing binary data.
  • JExpress Uninstaller supports [$HomeDir] and [$JavaHome] variables
  • Fixed a bug in parsing command line parameters which included embedded quotes
  • Set prmissions on Mac menu directory, and its subdirectories, to 755
  • Changed the initial default install directory on unix to /usr/local
  • Changed WindowsRegistry method names.
  • Changed API classes so useSwing is no longer passed to various methods
  • Note to existing customers: You may need to adapt custom classes that use the following classes from the API: WindowsRegistry, WindowsMenus, MacOS, UnixOS, UnixMenus
7.0.3
  • Added exportWindowsRegistryEntries to the WindowsRegistry API.
  • Pass /s (silent) switch when importing windows registry entry file.
  • Fixed silent installs.
  • Support sending user authentication to the web server after page request.
  • Remove menu items and control panel options on Windows even when write only bit set.
  • Fixed getting the system path when blanks are in directory names.
  • Moved the tabs in Developer from the left side to the top.
  • Replace all commands for uninstaller that reference the install directory to [$AppDir]
  • Fixed setting up the JVMVersion for Java app on Mac OS X
7.0.2
  • Now require JRE 1.4.x or later to run installers and JExpress Developer
  • Stanardized popup questions and warnings in installers and developer/builder.
  • Popup warning when "Find classes" isn't able to analyze a class.
  • Fixed a bug in WindowsRegistry when enumerating keys.
  • When a query to the windows registry returns a DWORD, format the result as an unsigned long in a string.
7.0.1
  • Fixed a screen layout bug when adding/changing menus
  • Verify the WindowsCommand getAncientShortPath() returns valid path.
7.0.0
  • Added support for billboards through a custom class
  • Run the isOk() method in custom classes in its own thread
  • Added an example of using marquees to the Samples
  • Fixed a bug creating menus on Linux machines with gnome and KDE installed
  • Changed all fonts in installers to use the JLabel font
  • Default to ksh when creating scripts on Solaris
  • Attach the uninstaller's popup question to the uninstaller window
  • Introduced JExpress Installer Source license
  • Use more professional icons in popup questions and notes
 
Release Notes for Earlier Versions
 

Copyright © 1997-2008 DeNova. All rights reserved worldwide.
Privacy policy                Legal notices