这是一个Java工具集合,包含多个独立的模块,主要用于飞书机器人API调用、阿里云OSS操作和OpenAI API调用等功能。
lark_sdk_bot
: 基于飞书开放平台SDK的机器人实现lark_bot
: 基于HTTP请求的飞书机器人实现lark_custom_bot
: 飞书自定义机器人实现aliyun_oss
: 阿里云OSS客户端工具openai
: OpenAI API调用工具android_example
: Android示例工程
- JDK 8+
- Maven 3.6+
# 在根目录执行,构建所有模块
mvn clean install
# 构建单个模块(在对应模块目录下执行)
cd [module_name]
mvn clean package
需要在 Main.java
中配置:
- APP_ID
- APP_SECRET
需要在 Main.java
中配置:
- APP_ID
- APP_SECRET
需要在 Main.java
中配置:
- WEBHOOK_URL
需要在 Main.java
中配置:
- ACCESS_KEY_ID
- ACCESS_KEY_SECRET
- ENDPOINT
- BUCKET_NAME
需要在 Main.java
中配置:
- API_KEY
在 ~/.m2/settings.xml
中添加:
<settings>
<servers>
<server>
<id>github</id>
<username>你的GitHub用户名</username>
<password>你的GitHub Personal Access Token</password>
</server>
</servers>
</settings>
部署新版本前,需要更新以下文件中的版本号:
- 根目录
pom.xml
- 各模块目录下的
pom.xml
确保在各模块的 pom.xml
中将依赖的 scope 设置为 provided:
<dependency>
<groupId>com.wayne</groupId>
<artifactId>模块名</artifactId>
<version>${version}</version>
<scope>provided</scope>
</dependency>
mvn clean deploy
在项目根目录的 build.gradle
中添加:
allprojects {
repositories {
maven {
name = "GitHub Packages"
url = uri("https://maven.pkg.github.com/wangyendt/java_tools")
credentials {
username = project.findProperty("gpr.user") ?: System.getenv("USERNAME")
password = project.findProperty("gpr.key") ?: System.getenv("TOKEN")
}
}
}
}
在app模块的 build.gradle
中添加:
dependencies {
implementation 'com.wayne:lark-sdk-bot:最新版本号'
implementation 'com.wayne:lark-bot:最新版本号'
implementation 'com.wayne:lark-custom-bot:最新版本号'
implementation 'com.wayne:aliyun-oss:最新版本号'
implementation 'com.wayne:openai:最新版本号'
}
// 使用SDK机器人
LarkBot bot = new LarkBot(APP_ID, APP_SECRET);
bot.sendTextToUser(openId, "测试消息");
// 使用自定义机器人
LarkCustomBot customBot = new LarkCustomBot(WEBHOOK_URL);
customBot.sendText("测试消息");
AliyunOSS oss = new AliyunOSS(ACCESS_KEY_ID, ACCESS_KEY_SECRET, ENDPOINT, BUCKET_NAME);
oss.uploadFile("本地文件路径", "OSS文件路径");
OpenAI openai = new OpenAI(API_KEY);
String response = openai.chatCompletion("你的提问");
- 确保Android项目的
minSdkVersion
不低于21 - 添加网络权限:
<uses-permission android:name="android.permission.INTERNET" />
- 如果使用文件上传功能,需要添加存储权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Apache License 2.0