This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Eclipsec.exe bug

Part Number: CODECOMPOSER
Other Parts Discussed in Thread: CCSTUDIO

Hi, we are encountering a bug while using "eclipsec.exe". We have a project that uses several builders, and whenever in one of these builders we add some sort of cli variable-evaluation to pass to the ext. program (such as ${build_var:CG_TOOL_CLANG} or ${build_var:COMPILER_FLAGS}, for example, but we also use others) the build fails, but ONLY in cli mode. For example, building the project from within CCS Studio works just as expected; the variables get correctly evaluated and passed to the external program and the project gets compiled fine. But using the continuous integration version (calling "eclipsec.exe" directly, or "/opt/ti/ccs/eclipse/eclipse" under linux) we get this Java traceback:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
CCS headless build starting... [Mon Mar 25 09:23:39 CET 2024]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

================================================================================
Pre processing...


================================================================================
Building...


**** Build of configuration Release for project PROJ_NAME ****

"C:\\ti\\ccs1260\\ccs\\utils\\bin\\gmake" -k -j 8 all -O 
 
gmake[1]: 'PROJ_NAME.out' is up to date.

**** Build Finished ****
org.eclipse.core.internal.resources.ResourceException: Errors occurred during the build.
        at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:534)
        at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:413)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.internalBuildProjects(ProjectBuilder.java:419)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:288)        
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:277)        
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.buildProjects(ProjectBuildApp.java:304)      
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.doRun(ProjectBuildApp.java:118)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp$1.run(BaseHeadlessApp.java:338)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2315)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2340)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.internalRun(BaseHeadlessApp.java:336)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.start(BaseHeadlessApp.java:267)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
Contains: Errors running builder 'Integrated External Tool Builder' on project 'PROJ_NAME'.
org.eclipse.core.runtime.CoreException: Error while evaluating variable build_var.
        at org.eclipse.core.internal.variables.DynamicVariable.getValue(DynamicVariable.java:58)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.resolve(StringSubstitutionEngine.java:271)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.substitute(StringSubstitutionEngine.java:195)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.performStringSubstitution(StringSubstitutionEngine.java:91)
        at org.eclipse.core.internal.variables.StringVariableManager.performStringSubstitution(StringVariableManager.java:547)
        at org.eclipse.core.internal.variables.StringVariableManager.performStringSubstitution(StringVariableManager.java:347)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ExternalToolsCoreUtil.getArguments(ExternalToolsCoreUtil.java:150)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ProgramLaunchDelegate.buildCommandLine(ProgramLaunchDelegate.java:175)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ProgramLaunchDelegate.launch(ProgramLaunchDelegate.java:80)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:803)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:716)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:711)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.launchBuild(ExternalToolBuilder.java:183)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.doBuildBasedOnScope(ExternalToolBuilder.java:171)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.build(ExternalToolBuilder.java:90)
        at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:860)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
        at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
        at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:392)
        at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:417)
        at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:517)
        at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:413)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.internalBuildProjects(ProjectBuilder.java:419)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:288)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:277)
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.buildProjects(ProjectBuildApp.java:304)
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.doRun(ProjectBuildApp.java:118)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp$1.run(BaseHeadlessApp.java:338)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2315)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2340)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.internalRun(BaseHeadlessApp.java:336)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.start(BaseHeadlessApp.java:267)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
Caused by: java.lang.NullPointerException
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver$Context.access$2(ProjectCoreDynamicVariableResolver.java:44)
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver.resolveValue__build_var(ProjectCoreDynamicVariableResolver.java:156)
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver.resolveValue(ProjectCoreDynamicVariableResolver.java:68)
        at org.eclipse.core.internal.variables.DynamicVariable.getValue(DynamicVariable.java:56)
        ... 47 more
Contains: Error while evaluating variable build_var.
java.lang.NullPointerException
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver$Context.access$2(ProjectCoreDynamicVariableResolver.java:44)
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver.resolveValue__build_var(ProjectCoreDynamicVariableResolver.java:156)
        at com.ti.ccstudio.project.core.internal.variables.ProjectCoreDynamicVariableResolver.resolveValue(ProjectCoreDynamicVariableResolver.java:68)
        at org.eclipse.core.internal.variables.DynamicVariable.getValue(DynamicVariable.java:56)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.resolve(StringSubstitutionEngine.java:271)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.substitute(StringSubstitutionEngine.java:195)
        at org.eclipse.core.internal.variables.StringSubstitutionEngine.performStringSubstitution(StringSubstitutionEngine.java:91)
        at org.eclipse.core.internal.variables.StringVariableManager.performStringSubstitution(StringVariableManager.java:547)
        at org.eclipse.core.internal.variables.StringVariableManager.performStringSubstitution(StringVariableManager.java:347)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ExternalToolsCoreUtil.getArguments(ExternalToolsCoreUtil.java:150)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ProgramLaunchDelegate.buildCommandLine(ProgramLaunchDelegate.java:175)
        at org.eclipse.core.externaltools.internal.launchConfigurations.ProgramLaunchDelegate.launch(ProgramLaunchDelegate.java:80)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:803)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:716)
        at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:711)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.launchBuild(ExternalToolBuilder.java:183)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.doBuildBasedOnScope(ExternalToolBuilder.java:171)
        at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.build(ExternalToolBuilder.java:90)
        at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:860)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:232)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:281)
        at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:334)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:337)
        at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:392)
        at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:417)
        at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:517)
        at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:413)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.internalBuildProjects(ProjectBuilder.java:419)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:288)
        at com.ti.ccstudio.project.core.services.ProjectBuilder.buildProjects(ProjectBuilder.java:277)
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.buildProjects(ProjectBuildApp.java:304)
        at com.ti.ccstudio.apps.internal.project.ProjectBuildApp.doRun(ProjectBuildApp.java:118)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp$1.run(BaseHeadlessApp.java:338)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2315)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2340)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.internalRun(BaseHeadlessApp.java:336)
        at com.ti.ccstudio.apps.internal.BaseHeadlessApp.start(BaseHeadlessApp.java:267)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1467)

And this is the same both under Windows and Linux, whenever we use ${build_var:SOMETHING} syntax. Note that without these options everything works fine in both cli and non cli build, so this is strictly a problem of this kind of variable-evaluation syntax. It really does look like a java/eclipse bug, can something be done for this? We haven't found any workarounds as the program gets abruptly interrupted.

Can something be done for this issue?

BR

Riccardo

EDIT: I haven't specified it because it's visible on the logs but the CCS version is the latest at the time of writing, 12.6.0.00008