자동 생성 된 package.json이 Kotlin에서 생성 한 JavaScript 파일을 가리키는 방식으로 구성되기를 원합니다.kotlin-frontend-plugin을 사용하여 package.json 구성을 설정하는 방법
apply plugin: 'kotlin-platform-js'
apply from: "$project.rootDir/gradle/deploy.gradle"
dependencies {
expectedBy project(":")
// Compile/implementation dependencies
implementation "org.jetbrains.kotlin:kotlin-stdlib-js:$kotlin_version"
}
apply plugin: 'org.jetbrains.kotlin.frontend'
compileKotlin2Js {
kotlinOptions.metaInfo = true
kotlinOptions.sourceMap = true
kotlinOptions.moduleKind = 'commonjs'
}
kotlinFrontend {
sourceMaps = true
npm {
dependency("kotlin")
replaceVersion("kotlin-js-library", "1.1.0")
}
define "PRODUCTION", true
webpackBundle {
bundleName = "${project.name}"
sourceMapEnabled = true
}
}
이 내가 생성 된 package.json 파일에 반영 될 것입니다 희망 무엇 $ project.builDir.path/클래스/나인에 위치한 myProject.js 파일을 모두 출력이 내 현재 Gradle을 구성입니다. 그러나 (프로젝트의 빌드 디렉토리에 위치) 출력 package.json 파일은 다음과 같다 :
이{
"name": "myProject",
"version": "1.2.0-10-SNAPSHOT",
"description": "simple description",
"main": "myProject",
"dependencies": {
"kotlin": "*"
},
"devDependencies": {
"webpack": "*",
"webpack-dev-server": "*",
"source-map-loader": "*",
"karma": "*",
"qunitjs": "1.23.1",
"karma-qunit": "*",
"karma-sourcemap-loader": "*",
"karma-phantomjs-launcher": "*",
"phantomjs-prebuilt": "*",
"karma-webpack": "*"
}
}
문제는이되면, package.json에서 "주요"속성에있는 번들 파일을 지정하지 않습니다 classes/main/myProject.js. 주된 속성을 특정 디렉토리와 js 파일로 설정하는 방법을 찾기 위해 문서를 살펴 보았지만 찾지 못했습니다. 나는 gradle 파일의 webpackBundle 부분에 bundleName 속성을 설정해서 만 이름을 바꿀 수있다. 사전에 도움을 주셔서 감사합니다!
나는 Gradle을 파일에 compileKotlin2Js을 설정하는 것을 시도했다 : compileKotlin2Js { kotlinOptions.metaInfo = 사실 kotlinOptions.sourceMap = 사실 kotlinOptions.moduleKind = 'commonjs' kotlinOptions.outputFile = "$ 프로젝트를. buildDir.path/$ {project.name} .js " " 그러나 오류가 발생합니다. 잘못된 구성 개체입니다. Webpack은 API 스키마와 일치하지 않는 구성 개체를 사용하여 초기화되었습니다. -configuration.resolve.modules [0]은 비워 둘 수 없습니다. –