Naven: CLI
Installation
- dotnet tool hosted on NuGet: check https://www.nuget.org/packages/MASES.NavenCLI/ and https://docs.microsoft.com/en-us/dotnet/core/tools/global-tools for deep installation instructions.
- Docker image hosted on GitHub and Docker Hub: follow instruction within the page and general instruction on https://docs.docker.com
- The image hosts both .NET 6 and JRE 11 runtimes
Important
The dotnet tool needs a JRE/JDK installed within the system (see JVM™ identification)
Usage
To use the CLI interface (NavenCLI) runs a command like the following:
- dotnet tool
naven -i
Important
If the previous command raises the error described in Intel CET and Naven, the only solution is to apply the following workaround (within an elevated shell) and disable CET:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\naven.exe" /v MitigationOptions /t REG_BINARY /d "0000000000000000000000000000002000" /f
- Docker image
docker run ghcr.io/masesgroup/naven -i
docker run masesgroup/naven -i
Command switch available
naven accepts the following command-line switch:
- Interactive (i): Activates an interactive shell
- RunCommand (r): executes the main method of a specific Java class in argument and exit
- Script (s): Executes the c# script in the file arument
- JarList (jl): A CSV list of JAR to be used or folders containing the JARs
- NamespaceList (nl): A CSV list of namespace to be used for interactive shell, Naven namespace are added automatically
- ImportList (il): A CSV list of import to be used
Plus other switches available at Command line switch page.
JVM™ identification
One of the most important command-line switch is JVMPath and it is available in JCOBridge switches: it can be used to set-up the location of the JVM™ library (jvm.dll/libjvm.so) if JCOBridge is not able to identify a suitable JRE installation.