Skip to content

sdkconfig in subfolder results in: error retrieving output from the JSON configuration server (IEP-899) #713

@ddomnik

Description

@ddomnik

Describe the bug
Using the multi_config approach https://github.com/espressif/esp-idf/tree/master/examples/build_system/cmake/multi_config, I keep my sdkconfigs in separate subfolders. One called /cmake/main and one /cmake/factory.
The SDK Configuration can't open this files, resulting in error retrieving output from the JSON configuration server
Also building the project first with a specific sdkconfig does not solve the issues. Reinstalling the IDE also did not work.
If I put the sdkconfig back to the top level folder, it works.

To Reproduce

  1. Have 2 separate sdkconfigs and defined via the CMakeLists.txt like that:
cmake_minimum_required(VERSION 3.5)

option(FACTORY_APP "Trimmed factory app version (USAGE: idf.py build -D FACTORY_APP=ON )" ON)

if(FACTORY_APP) #custom SDKCONFIG needs to be set before calling cmake/project.cmake
  set(SDKCONFIG "./cmake/factory/sdkconfig")
else()
  set(SDKCONFIG "./cmake/main/sdkconfig")
endif()

include($ENV{IDF_PATH}/tools/cmake/project.cmake)
  1. Build the project with one sdkconfig

  2. Try to open the sdkconfig that was used for the build with the SDK Configuration

Expected behavior
sdkconfig gets opened with SDK Configuration

Eclipse Error log:

java.lang.reflect.InvocationTargetException: Cannot invoke "org.eclipse.core.resources.IProject.getPersistentProperty(org.eclipse.core.runtime.QualifiedName)" because "project" is null
	at com.espressif.idf.sdk.config.ui.SDKConfigurationEditor.lambda$0(SDKConfigurationEditor.java:174)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Caused by: java.lang.NullPointerException: Cannot invoke "org.eclipse.core.resources.IProject.getPersistentProperty(org.eclipse.core.runtime.QualifiedName)" because "project" is null
	at com.espressif.idf.core.util.IDFUtil.getBuildDir(IDFUtil.java:527)
	at com.espressif.idf.core.util.SDKConfigUtil.getConfigMenuFilePath(SDKConfigUtil.java:28)
	at com.espressif.idf.sdk.config.ui.SDKConfigurationEditor.lambda$0(SDKConfigur
[Espressif-IDE Product Info.txt](https://github.com/espressif/idf-eclipse-plugin/files/10883415/Espressif-IDE.Product.Info.txt)
ationEditor.java:150)
	... 1 more
Root exception:
java.lang.NullPointerException: Cannot invoke "org.eclipse.core.resources.IProject.getPersistentProperty(org.eclipse.core.runtime.QualifiedName)" because "project" is null
	at com.espressif.idf.core.util.IDFUtil.getBuildDir(IDFUtil.java:527)
	at com.espressif.idf.core.util.SDKConfigUtil.getConfigMenuFilePath(SDKConfigUtil.java:28)
	at com.espressif.idf.sdk.config.ui.SDKConfigurationEditor.lambda$0(SDKConfigurationEditor.java:150)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)

Espressif-IDE Product Information:
Espressif-IDE Product Info.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions