私はElectron Frameworkが初めてです。プロジェクトルートにカスタム config.json を追加し、ファイルmain.jsでアクセスしています。npm start を使用してプロジェクトを実行すると、このファイルは正常にロードされますが、electron-builderを使用して exe ファイルを作成すると、エラー メッセージが表示されます。
Uncaught Error: ENOENT: no such file or directory, open 'C:\Users\Rohaan Ishfaq\AppData\Local\Programs\examsoft_V0.20\config.json
ここに main.js ファイルがあります:-
// Module for creating child processes
const spawn = require('child_process').spawn;
// Module for path manipulations
const path = require('path');
// Module to create calls between windows
const ipc = require('electron').ipcRenderer;
// Module jQuery
const $ = require('jquery');
// Module for file manipulations
const fs = require('fs');
// config json
const config = JSON.parse(fs.readFileSync('config.json', 'utf-8'));
(function main() {
init();
events();
function init () {
createSSHKey();
}
function events() {
// get login btn by id
const loginBtn = $('#login');
// register event listener
loginBtn.click(function (event) {
ipc.send('change-to-login');
});
}
function createSSHKey() {
if(!fs.existsSync(config.utilsPath))
alert(config.utilsPath + ' doesn\'t exist');
else {
var sshKeyPath = path.normalize(config.sshKeygenPath);
//trigger .bat file
ls = spawn('cmd.exe', ['/c', sshKeyPath]);
//on data
ls.stdout.on('data', function (data) {
console.log('stdout: ' + data);
});
//on error
ls.stderr.on('data', function (data) {
alert('Error Occured: '+ data);
process.exit(1);
});
//on exit
ls.on('exit', function (code) {
alert('SSH key pair has been created successfully. Check '+config.usersPath+process.env.USERNAME+config.sshDirectoryPath+' directory');
enableLogin();
});
}
}
function enableLogin() {
$('#login').text('Start');
$('#login').prop('disabled', false);
}
})();
この種の問題に直面し、それをうまく修正した人はいますか?