node-xcode
node-xcode copied to clipboard
Unable to read xcode(8.2.1) project
I am using following code to read xcode project and add one header file But it fails.
var xcode = require('xcode'),
fs = require('fs'),
projectPath = '/Users/Wajahat/Desktop/JASONETTE-iOS/app/Jasonette.xcodeproj/project.pbxproj',
myProj = xcode.project(projectPath);
// parsing is async, in a different process
myProj.parse(function (err) {
myProj.addHeaderFile('testheader.h');
fs.writeFileSync(projectPath, myProj.writeSync());
console.log('new project written');
});
I am getting following error
TypeError: Cannot read property 'path' of null
at correctForPath (/Users/Wajahat/Desktop/electron-quick-start-master/node_modules/xcode/lib/pbxProject.js:1586:38)
at correctForPluginsPath (/Users/Wajahat/Desktop/electron-quick-start-master/node_modules/xcode/lib/pbxProject.js:1572:12)
at pbxProject.addPluginFile (/Users/Wajahat/Desktop/electron-quick-start-master/node_modules/xcode/lib/pbxProject.js:89:5)
at pbxProject.addHeaderFile (/Users/Wajahat/Desktop/electron-quick-start-master/node_modules/xcode/lib/pbxProject.js:197:21)
at pbxProject.
Can anybody tell what i am doing wrong? Thanks in advance.
try first to parse, e.g.
var xcodeProject = xcode.project(projectPath);
xcodeProject.parseSync();
var buildPhase = xcodeProject.addBuildPhase(...
@hypery2k apologies for the slow reply. You need to specify a group to add the header to otherwise it your header is added to a group named "Plugins" which you probably don't have in your project?
myProj.addHeader(path, opt, group)