Troubleshooting
Problem
When running toolkit commands for i2 Analyze (for example, 'setup -t deploy'), the commands fail with the following error: Could not create service of type FileSystem using FileSystemServices.createFileSystem().
Cause
This error can be caused by one of the following:
1. The current user does not have read+write permission on the /tmp directory (Linux) or %TEMP% (Windows).
2. The JRE in <installdir>/toolkit/tools/java is corrupt or the user does not have permission to read <installdir>/toolkit/tools/java/jre/lib/security/java.security or <installdir>/toolkit/tools//java/jre/lib/ext/ibmjceprovider.jar
Diagnosing The Problem
Run the command again with the --stacktrace argument, e.g. ./setup -t createDatabases --stacktrace
1. If the error is caused by permissions on the /tmp dir, the stacktrace will contain java.io.IOException: Permission denied and java.io.File.createTempFile(File.java:2035)
* Exception is:
org.gradle.internal.service.ServiceCreationException: Could not create service of type FileSystem using FileSystemServices.createFileSystem().
at org.gradle.internal.service.DefaultServiceRegistry$FactoryMethodService.invokeMethod(DefaultServiceRegistry.java:741)
...
Caused by: java.lang.RuntimeException: java.io.IOException: Permission denied
at org.gradle.internal.nativeintegration.filesystem.services.GenericFileSystem.<init>(GenericFileSystem.java:87)
at org.gradle.internal.nativeintegration.filesystem.services.FileSystemServices.createFileSystem(FileSystemServices.java:52)
...
Caused by: java.io.IOException: Permission denied
at java.io.File.createTempFile(File.java:2035)
at org.gradle.internal.nativeintegration.filesystem.services.GenericFileSystem.createFile(GenericFileSystem.java:98)
at org.gradle.internal.nativeintegration.filesystem.services.GenericFileSystem.<init>(GenericFileSystem.java:84)
... 36 more
2. If the error is caused by corruption / permissions of the JRE security provider the stacktrace is likely to contain an error in JRE security, e.g. SecureRandom.nextBytes(SecureRandom.java:471)
org.gradle.internal.service.ServiceCreationException: Could not create service of type FileSystem using FileSystemServices.createFileSystem().
at org.gradle.internal.service.DefaultServiceRegistry$FactoryMethodService.invokeMethod(DefaultServiceRegistry.java:741)
...
Caused by: java.lang.NullPointerException
at java.security.SecureRandom.nextBytes(SecureRandom.java:471)
at java.util.UUID.randomUUID(UUID.java:156)
at org.gradle.internal.nativeintegration.filesystem.services.GenericFileSystem.generateUniqueContent(GenericFileSystem.java:94)
at org.gradle.internal.nativeintegration.filesystem.services.GenericFileSystem.<init>(GenericFileSystem.java:80)
at org.gradle.internal.nativeintegration.filesystem.services.FileSystemServices.createFileSystem(FileSystemServices.java:52)
...
Resolving The Problem
Cause 1 - Ensure that the current user has Read+Write permissions on /tmp (Linux) or %TEMP% (Windows)
Cause 2 - Ensure the the JRE is valid and the current user has at least Read permissions on it. - The JRE may be replaced entirely by removing /tools/java and extracting the supplied binary /bin/java/linux/jdk.tgz in its place.
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21992197