microsoft / team-explorer-everywhere

Team Explorer Everywhere Plugin for Eclipse
Other
300 stars 96 forks source link

tf command doesn't seem to work with OpenJ9 #308

Closed dgtlrift closed 3 years ago

dgtlrift commented 4 years ago

tf help or any parameter doesn't seem to work when using OpenJ9 virtual machine (to avoid licensing issues of Oracle Java)

ForNeVeR commented 4 years ago

Please take a look at https://github.com/microsoft/team-explorer-everywhere/pull/251 and https://github.com/microsoft/team-explorer-everywhere/issues/289#issuecomment-530436692

Probably it'll work if you define an environment variable TF_NOTELEMETRY=TRUE. The reason is java.xml.bind that was modularized and now require an explicit --add-modules argument, but it's probably easier to shut the offending functionality off completely.

dgtlrift commented 4 years ago

Adding TF_NOTELEMETRY=TRUE from #289 comment seems to the script seems to have resolved the issue - not sure of the significance of this environment variable.

ForNeVeR commented 4 years ago

Look: Java 9+ is modularized, so it requires an additional option to enable the java.xml.bind module to be used, and I think that this module was removed from JDK in some future version (12 or 13, can't remember right now).

Fortunately, the only code (detected so far) that uses that module in the whole Team Explorer Everywhere Command Line Client code base is the one that sends the telemetry. So, by disabling the telemetry, you disable the usage of this module, and the client works.

This variable is significant :)

brunoborges commented 4 years ago

The dependency (JAR) for XML can be downloaded and shipped with the tool, and set in the classpath as usual. No need to use modules.

eric-milles commented 3 years ago

This is fixed in 14.135.0