J Runtime can load normal ijs
script files. In addition it can load the ijr
encoded form of script files.
In development your application will likely require several script files, but in general it is preferable for a runtime application to have only a single script file. This can be built using the Project Manager.
The makejr
command converts a script file to an encoded form. For example:
wd 'makejr app.ijs app.ijr'
J loaded with the /rt parameter will load app.ijr
and work exactly as if it were the app.ijs
file. Encoding script files for use with runtime has several advantages:
The ijr
encoding is adequate protection from legitimate users. However, it is not proof against a serious attack by skilled computer professionals. If you are concerned with the proprietary nature of your ijr
files, you must ensure that they are not loaded into a system that contains untrusted code. Similarly, you must ensure you do not load scripts that could contain untrusted code. To do this, your main ijr
script should first verify that the namelist in all locales is empty before continuing. In most cases, this main script should not load any other scripts. If it must, then it must validate that the script is the right one before running it.
If you have security concerns that require more than these precautions, please contact us.