The Talon Manual

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

In This Section

Overview

To use the Talon runtime you must have a license and agree to the license terms. To obtain a license:

License Installation

You can install your license in your application's runtime environment and/or as an application resource and/or by placing it in the user home folder of the user running the JVM of the platform

Installing your license in your application's environment

1. Copy your license file to a disk location from which you will run the platform
2. Set one of the following environment variables or Java system properties to point to the directory containing license file.

  • NVLICLOCATION
  • nv.lic.location
  • nv_lic_location

Installing your license as an application resource

Modify your application build to include xplatform.lic at the resource root i.e. /xplatform.lic (in either a jar or in your classes folder).

Installing your license in your home directory

Copy your xplatform.lic file to the home directory of the user that runs the X application(s).

If you are just starting with the X Platform, this can be the easiest option to get started.

A few points to note

1. You must not modify the contents of xplatform.lic or it will be rendered invalid and will fail to validate.

2. License enforcement is performed when using most libraries distributed with the platform. A failure to find a valid license file will result in System.exit(1) being called, which will terminate the JVM.

3. If multiple environment variables/system properties with the above name(s) are set, then the following rules apply:

  • Environment variables take precedence over system properties.
  • The precedence of property names is as listed above.

4. A license installed as an application resource will take precedence over a license installed in the user's home directory.

5. A license installed in the application's runtime environment will take precedence over a license installed as an application resource.

6. Finally, if none of the above locations specify a license, certain X tools, such as robin, will bundle a free license with an 8Gb memory limit. 

Debugging License Resolution

To diagnose issues in license resolution you can set -Dnv.license.debug=true when launching the JVM. Setting this property will dump license resolution trace to System.err which will provide information on how your license was (or wasn't) loaded.

When running in an XVM

When running in a Talon XVM your license information (including its expiration date if applicable) will be printed as part of the startup banner printed to System.out providing it can be validated successfully: 

License Enforcement

The license enforcement check is done the first time one of the platform's license protected APIs is used.

If the license is found to be invalid JVM is terminated after printing an error to System.err that will look something like the following: 


When running a Talon application in an XVM, the XVM will ensure the license check has been done prior to your application being started. If you are using X application libraries outside of an XVM, you may want to ensure that the license check has been completed by calling the XRuntime.getLicenseDirectory() at an appropriate point in your application lifecycle.

If the license cannot be found, or the license has been tampered with, the process attempting to use the X Platform will be terminated. It is therefore important for applications that use the X Platform libraries outside of an XVM to ensure that the license is valid in an expeditious fashion.

License Expiration Warnings

If your license has an expiration date, then starting 1 month before the expiration of your license you will see the following warning emitted to System.err on each startup of your application. 


Once validated, the runtime will not perform additional checks against license expiration for a running process. If your application is long running, you may check the expiration in your application via XRuntime.getLicense()

 

 

  • No labels