使用Ballerina CLI工具开发Ballerina项目

芭蕾舞女演员是今年9月发布的1.0版本的最新编程语言。 芭蕾舞演员是一种通用编程语言,专门用于实现分布式网络应用程序。 芭蕾舞女演员具有内置模块,可以仅用几行代码来构建分布式Web应用程序。 芭蕾舞女演员提供了一个用于维护芭蕾舞女演员项目的CLI工具。 本文是对Ballerina CLI工具及其使用方式的简要介绍。

您可以从Ballerina官方网站下载Ballerina发行版。 下载并安装后即可开始编写Ballerina程序。 您可以通过执行以下命令来检查芭蕾舞女演员的安装版本。

ballerina version

此命令打印芭蕾舞女演员语言的安装版本。 您还可以通过运行以下命令来检查Ballerina安装的文件夹。

ballerina home

使用CLI创建新的Ballerina项目

您可以使用以下Ballerina CLI命令来创建新的Ballerina项目。 此命令将创建一个包含Ballerina.toml文件和src目录的新文件夹。 您的所有Ballerina描述和依赖项都包含在此Ballerina.toml文件中。

ballerina new <project-name>

现在,您可以开始在新创建的Ballerina项目中进行项目了。 以下命令生成一个模块,以开始编写您自己的芭蕾舞女演员代码。 您应将当前目录更改为Ballerina项目文件夹,以执行此命令。

ballerina add <module-name>

此命令与Ballerina语言中的Hello World Code示例一起在Ballerina模块内部生成Ballerina文件夹结构。<project_home> / src / <module_name> /main.bal成为应用程序的主要入口点。 模块的测试应放在<project_home> / src / <module_name> / tests /目录中。 main.bal中的Hello Wold程序如下。

import ballerina/io;

public function main ( )  {
    io:println( "Hello World!" );
}

您可以通过运行以下命令将项目与测试一起构建。 您可以通过在build命令的末尾添加'-skip-test'选项来防止运行测试用例。

ballerina build <module-name>

生成命令生成源代码并将其转换为Java文件,该文件位于<project_home> / target / bin /'文件夹中。如果您检查此文件夹,则可以看到带有模块名称的jar文件。 您可以以与运行标准Java程序相同的方式在JVM上运行此jar文件。

如果您需要不构建就运行模块,则可以尝试执行以下命令。 在这里,您可以运行模块文件或芭蕾舞女演员文件。

ballerina run {<bal-file> | <module-name>}

芭蕾舞女演员在芭蕾舞女演员项目中保留了缓存。 它可以保持高速缓存的顺序,以加快构建过程。

-从Central提取的BALO文件。

-编译期间生成的BIR文件。

-编译期间生成的JAR文件

通过执行以下命令,芭蕾舞女演员将清除芭蕾舞女演员项目中的缓存。

ballerina clean

通过运行以下命令,您只能使用Ballerina程序运行测试。 您可以通过添加'-a'选项来测试整个模块,或者只能通过指定模块名称来测试特定模块。

ballerina test <module-name>

通过Ballerina Central与他人合作

芭蕾舞女演员中心是开发人员可以与其他开发人员共享软件的主要场所。 Ballerina Central的功能与git相同。 通过推动模块,您可以将模块上传到Ballerina Central。 您可以通过拉动模块来使用其他人构造的模块的相同方法。 您可以浏览Ballerina Central网站上的可用模块。

可以使用以下命令通过CLI而不是从Ballerina中央网站搜索来搜索Ballerina模块。

ballerina search <key-word>

列出必要的模块后,可以通过运行以下命令将模块拉入项目。

ballerina pull <org-name>/<module-name>[:<version>]

组织名称是用于在公共名称空间下对模块进行分组的逻辑名称。 例如,您可以通过运行以下命令来使用可用于访问twitter api的twitter模块。

ballerina pull wso2/twitter:0.9.26

您可以使用Twitter客户端编写简单的Ballerina代码,如下所示以发送推文。

import wso2/twitter;

twitter:TwitterConfiguration twitterConfig = {
    clientId : testClientId,
    clientSecret : testClientSecret,
    accessToken : testAccessToken,
    accessTokenSecret : testAccessTokenSecret,
    clientConfig : { secureSocket : {
                        trustStore : {
                            path : "${ballerina.home}/bre/security/ballerinaTruststore.p12" ,
                            password : "ballerina"
                        }
                    }
                  }
};

public function main ( )  {
twitter:Client twitterClient = new (twitterConfig);

string status = "Twitter endpoint test" ;
    var result = twitterClient->tweet(status);
    if (result is twitter:Status) {
        // If successful, print the tweet ID and text.
        io:println( "Tweet ID: " , result.id);
        io:println( "Tweet: " , result.text);
    } else {
        // If unsuccessful, print the error returned.
        io:println( "Error: " , result);
    }
}

如果需要在Ballerina Central中发布模块,则需要在Ballerina Central中创建一个帐户。 然后,您可以获取一个秘密令牌并将其放入<USER_HOME> /。ballerina / Settings.toml文件。 始终记得在<project_home>中的Ballerina.toml文件中正确设置组织名称。

使用芭蕾舞女演员加密命令保护密码

在某些情况下,您可能需要在代码内使用密码。 例如,假设您需要创建一个Twitter机器人作为前面的示例。 在这里,我们只是将安全性令牌作为纯文本保留在代码本身内。 但是,在代码内保留密码是一个坏习惯,因为它会将密码泄露给可以查看您的源代码的其他人。 芭蕾舞女演员提供了从源代码中隐藏密码并仅在运行时公开密码的支持。

要加密值,您需要首先运行以下命令。 该命令首先要求加密一个值。 然后要求输入密码并验证密码。

ballerina encrypt

此命令使用CBC模式AES方法生成加密值。 您现在可以从源代码中读取机密值,如下所示。

import ballerina/io;
import ballerina/config;

public function main ( )  {
    io:println(config:getAsString( "secret.password" ));
}

在这里,我们使用config模块读取配置文件。 'secret.password'是真实值的别名。 运行此应用程序时,应提供一个加密的值作为命令行参数。

ballerina run sample --secret.password="@encrypted:{MOT+c6216tQLzSxiDfXclFg75q1ktY6+3VlCa6uhn40=}"

当芭蕾舞女演员开始跑步时,要求输入密码。 使用您用于加密值的密码。 该程序将打印您使用“芭蕾舞女演员加密”命令设置的单词。

结论

在此博客文章中,我们介绍了Ballerina语言提供的CLI功能。 您可以使用Ballerina CLI轻松创建,构建和测试Ballerina项目。 Ballerina Central可以用于重复使用其他Ballerina开发人员开发的模块。 您也可以与他人共享您的模块。 立即下载并尝试芭蕾舞女演员。 在Twitter上关注我,以了解有关Web集成和Web应用程序开发的更多信息。

参考文献

https://v1-0.ballerina.io/learn/how-to-write-secure-ballerina-code/

https://v1-0.ballerina.io/learn/by-example/config-api.html

https://github.com/ballerina-platform/ballerina-lang/blob/master/docs/index.md

From: https://hackernoon.com/developing-ballerina-project-with-ballerina-cli-tool-n71q32ts

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值