th2\u grpc_生成器_模板

th2-grpc-generator-template的Python项目详细描述


th2 gRPC生成器模板库

这是用于创建自定义gRPC库的模板项目。它包含示例原型消息和服务。 该工具从.proto文件生成代码,并将生成的包(.proto文件和生成的代码)上载到指定的存储库。在

如何转换模板

  1. src/main/proto目录下创建一个与项目名称同名的目录(使用下划线而不是破折号)(如果存在其他文件和目录,请删除它们)。在
  2. 将您的自定义.proto文件放入创建的目录中。注意package说明符和import语句。在
  3. gradle.properties文件中编辑release_versionvcs_url属性。在
  4. 编辑rootProject.name文件中的rootProject.name变量。这将是Java包的名称。在
  5. 编辑package_info.json文件,以便为Python包指定名称和版本(如果没有,请创建文件)。在
  6. 编辑setup函数调用中setup.py的参数,例如:authorauthor_emailurl。不要编辑其他的。在
  7. 根据新项目编辑README.md文件。在

注意,src/main/proto目录下创建的目录的名称在Python中使用(它是一个包名)。在

如何维护项目

  1. 做出你的改变。在
  2. gradle.properties文件中Java包的更新版本。在
  3. package_info.json文件中Python包的更新版本。在
  4. 承诺一切。在

如何运行项目

Java

如果要手动创建和发布Java包,请运行以下命令:

gradle --no-daemon clean build publish artifactoryPublish \
       -Pbintray_user=${BINTRAY_USER} \
       -Pbintray_key=${BINTRAY_KEY}

BINTRAY_USER和{}是发布的参数。在

Python

如果要手动创建并发布Python包:

  1. .proto文件生成服务:
    • 使用Gradle下载并生成th2 Python service generator项目: ^{pr2}$ 在
    • 运行th2 Python服务生成器:
      java -jar {path_to_jar} -p src/main/proto/{package_name} -w PythonServiceWriter -o src/gen/main/python/{package_name}
      
  2. .proto文件生成代码并发布所有内容:
    pip install -r requirements.txt
    python setup.py generate
    python setup.py sdist
    twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*
    
    PYPI_REPOSITORY_URLPYPI_USER和{}是发布的参数。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓为什么Java AudioEffect不支持双簧管?   增加内存后出现java IntelliJ堆大小错误   在unix/linux中工作的java中将unicode字符串转换为ASCII   java是否缺少正确对齐输出的值?   java Spring 3 MVC:动态表单中的onetomany(创建/更新时添加/删除)   java在接口中创建两个通用参数   lambda使用Java 8从嵌套列表中使用forEach查找项的替代方法是什么?   Java正则表达式匹配10位电话号码,中间有空格   linux将log4j外部化。使用命令行Java的属性文件   带有SSL的java简单RMI服务器   java无法为事务[…]打开JPA EntityManager无法获取驱动程序类“null”和URL“null”的连接   Android设备上的java Oauth Foursquare   for循环的ImageButton名称的java骰子模拟浓缩   java有没有简单的1d条形码阅读器?   如何在调用resultset后解决“无效字符串或缓冲区长度”。从java到访问mdb的getString()连接   在Java8中,是否可以使用JVM参数来控制何时(或在什么条件下)卸载类?