microsoft / microsoft/node-api-dotnet

Example "aot-module" fails with [ERR_MODULE_NOT_FOUND]: Cannot find package 'node-api-dotnet'

Offen
#461 0 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
C#
Sterne
783
Forks
80
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

To repro, I'm on main branch commit 11c5a48.

I'm following the instructions at examples/aot-module/README.md:

cd examples\aot-module
dotnet pack ../..
dotnet publish
node example.js

And I get this error:

node:internal/modules/package_json_reader:268
  throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);
        ^

Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'node-api-dotnet' imported from D:\node-api-dotnet\examples\aot-module\bin\aot-module.js
    at Object.getPackageJSONURL (node:internal/modules/package_json_reader:268:9)
    at packageResolve (node:internal/modules/esm/resolve:768:81)
    at moduleResolve (node:internal/modules/esm/resolve:854:18)
    at defaultResolve (node:internal/modules/esm/resolve:984:11)
    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:685:12)
    at #cachedDefaultResolve (node:internal/modules/esm/loader:634:25)
    at ModuleLoader.resolve (node:internal/modules/esm/loader:617:38)
    at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:273:38)
    at ModuleJob._link (node:internal/modules/esm/module_job:135:49) {
  code: 'ERR_MODULE_NOT_FOUND'
}

Node.js v22.14.0

I found I could fix this by making this change in bin/aot-module.js:

// Removed this line:
//import dotnet from 'node-api-dotnet/net8.0'; 

// Added this line:
const dotnet = undefined;

And then it works fine:

Hello .NET AOT!

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die Befehle in examples/aot-module/README.md für den gemeldeten Commit auszuführen und bin/aot-module.js zu untersuchen, insbesondere dessen node-api-dotnet-Import. Das Issue ist abgeschlossen, wenn die dokumentierten Befehle erfolgreich ausgeführt werden und "Hello .NET AOT!" ausgeben, ohne den Import manuell zu ersetzen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp, javascript, node.js
Bereich
build-system
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.