netty-grpc_gradle代码生成位置

代码生成位置

默认位置

在这里插入图片描述

默认代码的生成位置在$buildDir/generated/source/proto

Message在目录下的/main/java

Service在目录下的/main/grpc

位置组成

生成代码位置默认在$generatedFilesBaseDir/$sourceSet/$builtinPluginName下面。

先分割一下前面的默认位置:

$generatedFilesBaseDir$buildDir/generated

$sourceSet/source/proto

builtPluginName/grpc

也就是说,我们只要改变了对应的参数,就能够直接把代码生成到工程当中。

  • generatedFilesBaseDir
protobuf {
  generatedFilesBaseDir = "src"
}

我在protobuf配置中添加了这一句(其他配置保留),clean之后generateProto,如下
在这里插入图片描述

根目录已经由$buildDir/generated变成了src

$sourceSet就是main

Message就是自动生成在java目录下,这个就达到了目的。

但是service前面有个buildPluginName,也就是grpc,所以目录不在java下面。

Message$generatedFilesBaseDir/$sourceSet/java

service$generatedFilesBaseDir/$sourceSet/$buildPluginName

现在,我们需要把最后一层的子目录改掉。

  • outputSubDir
generateProtoTasks {
        all()*.plugins {
            grpc {
                outputSubDir = 'godme'
            }
        }
    }

生成的路径为
在这里插入图片描述

grpc就变成了godme

如果把godme改成java,那么,生成的不论是service还是Message都能够自动归到工程代码当中了。

资源加载位置

sourceSets{
    main {
        proto {
            srcDir "src/main/proto"
            srcDir "src/test/proto"
        }
    }
}

加载指定为位置proto

小结

更多配置看官网,目前只是需要自动生成代码到工程,嗯简单总结一下。

  • 修改根目录为src
protobuf{
    generatedFilesBaseDir = "src"
}
  • 修改grpcjava
generateProtoTasks {
        all()*.plugins {
            grpc {
                outputSubDir = 'java'
            }
        }
    }
  • 注意层级关系
protobuf{
    generatedFilesBaseDir = "src"
    generateProtoTasks{
    	all()*.plugins {
            grpc {
            	outputSubDir = "java"
        	}
    	}
	}
}

其他的到时候慢慢翻阅,具体可配置项同SpringBoot一般,自己翻阅源代码,或者看官网。

代码在此

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值