我正在尝试根据几个有效的原型文件生成打字稿文件。整个脚本在生成其他类型的文件(例如c#,java等)时起作用。但是,在尝试生成打字稿文件时会出现问题。
首先,我已经全局安装了protoc,并尝试使用ts-protoc-gen和grpc-web_out。
我正在执行以下代码:
protoc --proto_path="path_to_dtos" --grpc-web_out=import_style=typescript,mode=grpcwebtext:"output_path" "file_path\file_name.proto"
此操作成功执行,没有错误发生,但是没有文件生成。
当尝试使用ts-protoc-gen执行时,我执行以下代码:
protoc --proto_path="path_to_dtos" --plugin=protoc-gen-ts="path_to_plugin" --js_out=import_style=commonjs,binary:"output_path" --ts_out="output_path" "file_path\file_name.proto"
这会导致错误:--ts_out:protoc-gen-ts:访问被拒绝。
我尝试将其放入相对路径,完整路径,无引号,引号,从后者中删除--js_out等...
以下是原始文件之一的样子:
syntax = "proto3";
package xxx.protobuf;
option java_package = "com.xxx.communication_types.dto";
option csharp_namespace = "xxx.DataCommunicationTypes";
message VersionDto {
int32 major = 1; // Major version of the app
int32 minor = 2; // Minor version of the app
int32 revision = 3; // Revision version of the app
}
我无所适从,我试图寻找一些解决方案,但网上找不到任何东西。
答案 0 :(得分:1)
此问题没有“快速”答案,因为从原型手动编译DTO并不广泛。在大多数情况下,它与您使用的路径有关。
对于您而言,由于错误是
-ts_out:protoc-gen-ts:访问被拒绝。
我认为它与protoc-gen-ts插件有关
尝试一下