Filter löschen
Filter löschen

Is it possible to generate/update MATLAB toolbox project file (*.prj) programmatically?

7 Ansichten (letzte 30 Tage)
Hi,
I have created a custom toolbox. Now I'm trying to have a continuous development process that would automatically package the toolbox every midnight (if any of the files have changed). I'm trying to understand if it would be possible to update the toolbox project file programmatically - to change toolbox version, project file list, excluded file list, etc. I can then use the updated prj file to package the new toolbox.
Cheers,
sunny

Antworten (3)

Sean de Wolski
Sean de Wolski am 23 Feb. 2018
I don't know of a documented way to generate the prj file the first time.
  7 Kommentare
Harley Day
Harley Day am 10 Sep. 2018
Bearbeitet: Harley Day am 10 Sep. 2018
Yes I've been thinking the same thing. There doesn't seem to be a way to programatically update a matlab project file. This would be useful for the purposes of code maintenance from github. My continuous integration server could then be configured to build and distribute new releases of the toolbox when I commit to the master branch.

Melden Sie sich an, um zu kommentieren.


Sunny Talekar
Sunny Talekar am 1 Mär. 2019
Workaround:
Given that the toolbox project file is just an xml under the hood, I knocked up some functions to update relevant sections of the project file using built-in xml editing functionality. Serves the purpose but a built-in solution would be much appreciated.
  4 Kommentare
Eric Hoffmann
Eric Hoffmann am 3 Okt. 2019
Hi Sunny,
I too would be interested in looking at your code.
Thanks,
Eric

Melden Sie sich an, um zu kommentieren.


Sly Knight
Sly Knight am 14 Jul. 2022
Use readstruct and writestruct.
project = readstruct(fullfile(path,project_name.prj),'FileType','xml');
project.configuration.param_version = project_file.configuration.param_version + 1;
writestruct(project,fullfile(path,project_name.prj),'FileType','xml')

Kategorien

Mehr zu File Operations finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by