When I run the Compile DGML command I get an error because the pathing for the .alpackages folder is incorrect. It is
./alc.exe /project:"c:\Repos\WorkSpaceFolder\AppFolder" /packagecachepath:"c:\Repos\WorkspaceFolder\AppFolder../.alpackages" /generatecrossreferencesckages" /generatecrossreferences
rather than
./alc.exe /project:"c:\Repos\WorkSpaceFolder\AppFolder" /packagecachepath:"c:\Repos\WorkspaceFolder\AppFolder\../.alpackages" /generatecrossreferencesckages" /generatecrossreferences
I think the problem is here in ALCExe.ts
static CompileDGML() {
let projectpath
try {
projectpath = vscode.workspace.getWorkspaceFolder(vscode.window.activeTextEditor.document.uri).uri.fsPath;
} catch {
vscode.window.showErrorMessage('No active project document.');
}
let workSpaceSettings = Settings.GetConfigSettings(projectpath);
let packageCachePath = projectpath + workSpaceSettings[Settings.packageCachePath] <<<
crsOutput.showOutput(`CompileDGML for project "${projectpath}"`, false)
let alcpath = this.GetALCExeDir();
CRSTerminal.CompileDGML(alcpath, projectpath, packageCachePath);
}
This line should try to join paths rather than a straight string concatenation (I think).
let packageCachePath = path.Join(projectpath, workSpaceSettings[Settings.packageCachePath])
I don't know if path.Join exists in the library you are using.
Also, wouldn't you need to include /assemblyprobingpaths parameter if there is any .NET references?
I have a multi-root workspace. For various reasons, I have my .alpackages folder at the same level as all the app folders.
rather than
When I run the Compile DGML command I get an error because the pathing for the .alpackages folder is incorrect. It is
./alc.exe /project:"c:\Repos\WorkSpaceFolder\AppFolder" /packagecachepath:"c:\Repos\WorkspaceFolder\AppFolder../.alpackages" /generatecrossreferencesckages" /generatecrossreferences
rather than./alc.exe /project:"c:\Repos\WorkSpaceFolder\AppFolder" /packagecachepath:"c:\Repos\WorkspaceFolder\AppFolder\../.alpackages" /generatecrossreferencesckages" /generatecrossreferences
I think the problem is here in
ALCExe.ts
This line should try to join paths rather than a straight string concatenation (I think).
let packageCachePath = path.Join(projectpath, workSpaceSettings[Settings.packageCachePath])
I don't know ifpath.Join
exists in the library you are using.Also, wouldn't you need to include
/assemblyprobingpaths
parameter if there is any .NET references?