所以我在github上托管了一个打字稿项目。
我正在尝试设置Travis CI进行测试,但是当我进入将代码编译为javascript(tsc命令)的步骤时,它将失败。
错误看起来像这样:
> node node_modules/typescript/bin/tsc
src/DbHandler.ts:2:32 - error TS2307: Cannot find module './models/User'.
2 import { User, UserInit } from './models/User';
~~~~~~~~~~~~~~~
src/User.ts:2:22 - error TS2307: Cannot find module './models/User'.
2 import { User } from "./models/User";
~~~~~~~~~~~~~~~
Found 2 errors.
npm ERR! code ELIFECYCLE
文件路径正确无误,并且可以在本地编译。.
在项目中,我有这个package.json(已清理):
{
"name": "project",
"version": "0.0.1",
"description": "",
"main": "dist/server.js",
"scripts": {
"build": "node node_modules/typescript/bin/tsc",
"prod": "node dist/server.js",
"dev": "ts-node src/server.ts",
"dev:watch": "nodemon",
"test:watch": "ts-node node_modules/jasmine/bin/jasmine",
"test": "node node_modules/jasmine/bin/jasmine.js --config=jasmine.json"
},
"author": "myname",
"license": "MIT",
"devDependencies": {
"@types/express": "~4.17.1",
"@types/jasmine": "~3.4.4",
"jasmine": "~3.5.0",
"nodemon": "~1.19.4",
"ts-node": "~8.4.1",
"tslint": "~5.20.0",
"typescript": "~3.6.4"
},
"dependencies": {
"express": "~4.17.1"
}
}
我的.travis.yml
如下:
language: node_js
cache: npm
node_js:
- "stable"
install:
- npm ci
- npm run build
script:
- npm run test
我的文件结构是这样的:
package.json
.travis.yml
src/
models/
User.ts
DbHandler.ts
User.ts
server.ts
test/
files_for_tests_with_ts_extension