如何将 Typescript 项目打包成可执行文件?
由于我找了一段时间没有找到,所以我使用了 now 节点来实现上述目的。我正在发布我所做的事情,希望有人会觉得它有用。
- 将Typescript项目编译成node(根据this https://medium.com/isovera/3-ways-to-implement-typescript-into-your-project-39a2c9d7f850)。我个人用的是tsc。
Note:在使用 webpack 时,我遇到了 net 和 fs 的一些问题。
将以下内容添加到 Webpack.config.js 会有所帮助:
node: {
net: 'empty',
fs: 'empty'
}
(参考here https://github.com/hapijs/joi/issues/665 and here https://github.com/webpack-contrib/css-loader/issues/447)
-
编译项目后,我使用节点运行它(仅用于验证)。
-
为了从节点项目创建 exe 文件,我使用了pkg https://www.npmjs.com/package/pkg.
我使用的 tsconfig.json 是:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"outDir": "./dist/server",
"strict": true,
"sourceMap": true,
"typeRoots": [
"node_modules/@types", "./typings"
]},
"exclude": [
"dist",
"node_modules"
]
}
并将以下内容添加到 package.json (参考 https://www.typescriptlang.org/docs/handbook/compiler-options.html)
"build-ts": "tsc --project ./tsconfig.json"