KB#01149-Multi-user installation of the Netbeans IDE
BasisIDE in a Multi-User Environment
Setting up the BasisIDE in a multi-User environment such as Windows Server 2012 requires several steps. The following steps are a guideline only. NetBeans itself will allow a multi-user environment. The current default install of the BASIS IDE is not configured for a multi-user environment. Additional configuration may be required in addition to the steps below.
- Create a new basis\basisIDE directory under each user’s directory that will be using the BasisIDE.
- ie: C:\Users\%username%\basis\basisIDE
- Using a clean install of BBj, copy all of the directories and files in the <BasisInstallDir>\ide\defaultuser to each of the user directories you created in the first step. Note that a clean install is not required but any previous modifications to the IDE settings will be carried over for each user if a clean install is not used.
- Create a new shortcut that can be accessed by each user for launching each users customized version of the BasisIDE.
The target should be modified to reflect the new directory you created for the -userdir parameter:
Target: <BasisInstallDir>\bin\BasisIDE.exe -userdir "C:\Users\ %username%\basis\basisIDE”
Start in: <BasisInstallDir>\\bin
ShortCut Key: None
Run: Normal Window
Comment: Runs the Basis IDE
Once this is complete, verify that the shortcut functions properly and that it brings up the customized BasisIDE for each user.
Some built-in functionality of the BasisIDE depends on the .jar files being in their designated locations in the fixed directory hierarchy setup by the install. In other words, some things won't work out-of-the-box if the jars in the defaultUser directory are not located in the< BASIS_INSTALL _DIR>/ide/defaultuser/modules directory. As an example, compiling BBj files succeeds by default because the BBj module assumes it is located in <BASIS_INSTALL_DIR>/ide/defaultuser/modules and that the BBjCpl compiler is located in <BASIS_INSTALL_DIR>/bin. It knows that it only has to go up two directory levels and over to bin to find the BBjCpl compiler. The user therefore does not have to go into the compiler options and manually enter this location; it is established by default.
Because you will be moving the plugin modules to another user directory, this built-in hierarchy assumption is now false. The IDE will not be able to automatically locate a few things and the default settings will not function properly. As a result, each of the IDE users will need to open the Options window and manually edit the options to specify the location of specific items (such as the directory path location of the BBjCpl compiler, the BBj executable, the BBjLister, DialogWizard and so forth). Once that is complete, all the functionality should be restored.
If preferred, it is possible to use the locations in the fixed directory hierarchy setup by keeping all of the user directories directly in the <BASIS_INSTALL_DIR>/ide directory. This allows the directory hierarchy to remain intact and avoids the necessity of editing the location of specific items in the options. If this approach is used, the administrator will need to be aware that user data will be kept in the <BASIS_INSTALL_DIR>/ide directory rather than each individual user directory and treated appropriately.
Updating BBj while using a Multi-User environment for the BasisIDE
When updating BBj in a multi-user environment such as Windows 2012 Server where the BasisIDE has been set up to accommodate multiple users, special procedures need to be followed.
When an updated BBj is installed on the system, each of the users BasisIDE directory’s will need to be updated manually with all of the files found in the <BasisInstallDir>\ide\defaultuser directories after the update with the exception of the following directories:
These directories contain all of the users customized settings. Retaining these directories but updating all other files allows all of the updates to be applied for each user. It is recommended that you backup all files in the Users basisIDE directory before performing this procedure.
Be aware that if Basis makes any changes to the actual files where BasisIDE settings are stored, it’s possible that a new default IDE will need to be copied to each users directory and all of their saved settings will be removed.
Basis continues to recommend the use of Source Code Version control when using the IDE in a multi-user environment.
Source Code Version Control
A source code Version Control System (VCS) is an essential component of modern software development, and no Business BASIC developer should be without one. Simply stated, a VCS is a central repository of files containing the source code and resources belonging to a software project, organized in whatever directory structure a development team desires. Individual developers check out files from the central archive, make and test their changes, and then return the altered files to the repository. The VCS manages the check-out/check-in process and keeps track of which versions of files belong to which versions of the final product. Such a system imposes order on the software development process by allowing developers to:
- Effortlessly share the same code base, quickly communicating changes to each other
- Automatically merge several developers' changes
- Instantly restore accidentally deleted files or directories
- Trace changes made to a file in the repository back to the exact location, to the developer who made the change, purpose of the change, and the date of its check-in to the repository
- Maintain older and re-released versions of the software project without affecting work on the most current version
- Quickly "roll back" the project to a previous condition, if necessary, due to a fatal software bug or other problem
Last Modified: 02/09/2013 Product: BBj Operating System: N/A
BASIS structures five components of their technology into the BBx Generations.