### Start Microservice Module from Target Directory
Source: https://help.jeecg.com/java/springcloud/archetype
After installing the 'jeecg-boot-parent' to the local repository, navigate to the module's target directory and run this command to start the microservice module. Ensure UTF-8 encoding and use the specified random device for security.
```bash
cd jeecg-module-{模块名}
mvn clean install
cd jeecg-module-{模块名}-start\target
java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-module-{模块名}-start.jar
```
--------------------------------
### Start TongWeb Server
Source: https://help.jeecg.com/java/JeecgBoot-use-TongWeb-springboot3
Navigate to the TongWeb bin directory, grant execute permissions to all shell scripts, and then start the TongWeb server using the startserver.sh script. Verify the server has started by checking for the 'TongWeb Server start in xxx ms' log message and confirming that the management console (9060) and application HTTP (8088) ports are listening.
```bash
cd /opt/TongWeb/bin
# 赋予执行权限
chmod +x *.sh
# 启动TongWeb
./startserver.sh
```
```bash
TongWeb Server start in xxx ms
```
```bash
# 管理控制台端口9060,应用HTTP端口8088
ss -tlnp | grep -E '9060|8088'
```
--------------------------------
### Install Dependencies
Source: https://help.jeecg.com/ui/setup/electron-build
Run this command to install project dependencies.
```bash
pnpm install
```
--------------------------------
### Configure TongWeb License
Source: https://help.jeecg.com/java/JeecgBoot-use-TongWeb-springboot3
Copy the license file to the TongWeb installation root directory. The license file must be named 'license.dat' and placed at the same level as the 'bin' and 'domains' directories. TongWeb will not start without a valid license.
```bash
# 将license.dat复制到TongWeb根目录(不是子目录)
cp license.dat /opt/TongWeb/
# 确认license文件已就位
ls -l /opt/TongWeb/license.dat
```
--------------------------------
### Download TongWeb Installation Package
Source: https://help.jeecg.com/java/JeecgBoot-use-TongWeb-springboot3
Upload the TongWeb installation package and license file to the server before proceeding with the installation.
```bash
TongWeb8.0.9.12.tar.gz
license.dat
```
--------------------------------
### File Write Example
Source: https://help.jeecg.com/aigc/flowNodes/nodeKnowWrite
Configuration example for writing user-uploaded files (PDF, DOCX) directly into a knowledge base using file write mode.
```text
开始 / doc_path
```
--------------------------------
### Install TiUP
Source: https://help.jeecg.com/java/JeecgBoot-Use-TiDB
Download and install the TiUP package manager using curl. This command fetches the installation script and executes it.
```bash
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
```
--------------------------------
### Example User Query for JeecgBoot
Source: https://help.jeecg.com/aigc/start/flowApp
An example question to test the AI's understanding of JeecgBoot.
```text
what is jeecg?
```
--------------------------------
### Start TongRDS Center Node
Source: https://help.jeecg.com/java/JeecgBoot-use-TongRDS
Execute this script to start the TongRDS center node. Successful startup is indicated by specific log messages.
```bash
./StartCenter.sh
```
--------------------------------
### Start Backend JAR Application
Source: https://help.jeecg.com/java/publish/jar
Use these commands to start the backend JAR application. The Linux command runs it in the background.
```bash
Window启动命令:
java -jar jeecg-system-start-3.8.0.jar
Linux下后台进程启动命令:
nohup java -jar jeecg-system-start-3.8.0.jar >catalina.out 2>&1 &
关掉项目:
ps -ef|grep java
kill 进程号
```
--------------------------------
### Start TongRDS Service Node
Source: https://help.jeecg.com/java/JeecgBoot-use-TongRDS
Execute this script to start the TongRDS service node. Successful startup is indicated by specific log messages.
```bash
./StartServer.sh
```
--------------------------------
### Text Write Example
Source: https://help.jeecg.com/aigc/flowNodes/nodeKnowWrite
Example of writing dynamic text content to a knowledge base using input variables for placeholders.
```text
以下是用户咨询的问题摘要:
问题:{{question}}
回答:{{answer}}
记录时间:{{timestamp}}
```
--------------------------------
### Dialogue Summary Write Example
Source: https://help.jeecg.com/aigc/flowNodes/nodeKnowWrite
Configuration example for writing a dialogue summary to a knowledge base using text write mode.
```text
{{summary}}
```
--------------------------------
### Seata Server Startup Commands
Source: https://help.jeecg.com/java/springcloud/seatavIntegratedCombat
Commands to start the Seata server. Ensure you are in the 'bin' directory after extracting the Seata server package.
```bash
window下运行`seata-server.bat`
```
```bash
linux下运行`seata-server.sh`
```
--------------------------------
### BasicDrawer with Native Form
Source: https://help.jeecg.com/ui/2dev/naviteForm
Integrate a native Ant Design Vue form within a BasicDrawer component. This example shows form item setup and submission handling.
```vue
```
--------------------------------
### List Button JS Enhancement
Source: https://help.jeecg.com/java/online/enhanceJs/button
For list buttons, ensure the button's code matches the JavaScript function name. This example shows how to get the ID of a selected row.
```javascript
function one(row) {
console.log('Selected row ID:', row.id);
}
```
--------------------------------
### Compile Frontend Project
Source: https://help.jeecg.com/java/docker/quickcloudbak
Navigate to the frontend directory, install dependencies using pnpm, and then build the project.
```bash
cd JeecgBoot/jeecgboot-vue3
```
```bash
pnpm i
pnpm run build
```
--------------------------------
### Registering and Opening a Drawer from a Page
Source: https://help.jeecg.com/ui/component/Drawer
This example demonstrates how to use the useDrawer hook in a parent component to register and control a Drawer component. It shows the basic setup for integrating a drawer into a page.
```html
```
--------------------------------
### Global Package JSON for Monorepo
Source: https://help.jeecg.com/ui/2dev/qiankun
This `package.json` is intended for a monorepo setup, managing installation and running scripts for multiple sub-applications (main and sub01). It uses `npm-run-all` to execute tasks concurrently or sequentially.
```json
{
"name": "qiankun-jeecg",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"install": "npm-run-all install:* ",
"install:main": "cd ant-design-jeecg-vue && npm install",
"install:sub01": "cd jeecg-app-1 && npm install ",
"start": "npm-run-all start:* ",
"start:main": "cd ant-design-jeecg-vue && start cmd /k npm run serve",
"start:sub01": "cd jeecg-app-1 && start cmd /k npm run serve",
"build": "npm-run-all build:* ",
"build:main": "cd ant-design-jeecg-vue && npm run build",
"build:sub01": "cd jeecg-app-1 && npm run build"
},
"devDependencies": {
"npm-run-all": "^4.1.5"
}
}
```
--------------------------------
### 修改 jeecg-system-start/pom.xml - 排除传递的 Tomcat 依赖
Source: https://help.jeecg.com/java/JeecgBoot-Use-BCSAppServer-Embedded-springboot3
排除 `jeecg-system-biz` 和 `jeecg-module-demo` 依赖中传递进来的 `spring-boot-starter-tomcat`,以避免冲突。此操作仅移除 Tomcat 容器,保留校验框架所需的 `tomcat-embed-el`。
```xml
org.jeecgframework.boot3
jeecg-system-biz
${jeecgboot.version}
org.springframework.boot
spring-boot-starter-tomcat
org.jeecgframework.boot3
jeecg-module-demo
${jeecgboot.version}
org.springframework.boot
spring-boot-starter-tomcat
```
--------------------------------
### Build All Electron Packages
Source: https://help.jeecg.com/ui/setup/electron-build
This command first compiles the project and then packages it into an installer. Ensure you have administrator privileges for the command prompt if encountering 'Cannot create symbolic link' errors.
```bash
npm run electron:build-all
```
--------------------------------
### JimuReport Row and Cell Structure
Source: https://help.jeecg.com/java/ai/skills/skill-jimureport
Defines the structure for rows and cells within the 'jsonStr' for report layout. Rows and cells are indexed starting from 1. This example shows a header row with 'ID' and '名称' and a data row binding to '#{ds.id}' and '#{ds.name}'.
```json
{
"rows": {
"1": {
"cells": {
"1": { "text": "ID", "style": 4 },
"2": { "text": "名称", "style": 4 }
},
"height": 34
},
"2": {
"cells": {
"1": { "text": "#{ds.id}", "style": 2 },
"2": { "text": "#{ds.name}", "style": 2 }
}
},
"len": 200
}
}
```
--------------------------------
### Create Dashboard with Components
Source: https://help.jeecg.com/java/ai/skills/skill-dashboard
This example demonstrates how to initialize the API, create a dashboard page, add different types of components (number cards, line charts, pie charts), and save the dashboard.
```APIDOC
## Create Dashboard with Components
### Description
This example demonstrates how to initialize the API, create a dashboard page, add different types of components (number cards, line charts, pie charts), and save the dashboard.
### Method
Python SDK (bi_utils)
### Endpoint
N/A (SDK usage)
### Parameters
N/A (SDK usage)
### Request Example
```python
from bi_utils import *
init_api('https://api3.boot.jeecg.com', 'your-token')
# Create dashboard (style='default', grid coordinates)
page_id = create_page('运营数据看板', style='default', theme='default')
# First row: 4 number cards (w=6x4=24, h=17)
add_number(page_id, '总用户数', x=0, y=0, w=6, h=17, value=15890, suffix='人')
add_number(page_id, '今日活跃', x=6, y=0, w=6, h=17, value=3256, suffix='人')
add_number(page_id, '今日收入', x=12, y=0, w=6, h=17, value=89600, prefix='¥')
add_number(page_id, '转化率', x=18, y=0, w=6, h=17, value=23.5, suffix='%')
# Second row: Line chart + Pie chart
add_chart(page_id, 'JLine', '用户增长趋势', x=0, y=17, w=14, h=35,
categories=['周一','周二','周三','周四','周五','周六','周日'],
series=[{'name':'新增用户', 'data':[120,200,150,80,70,110,130]}])
add_chart(page_id, 'JPie', '用户来源', x=14, y=17, w=10, h=35,
pie_data=[
{'name':'微信','value':40},
{'name':'APP','value':30},
{'name':'网页','value':20},
{'name':'其他','value':10},
])
save_page(page_id)
print(f'仪表盘创建成功!ID: {page_id}')
```
### Response
#### Success Response
Prints a success message with the created dashboard ID.
#### Response Example
```
仪表盘创建成功!ID:
```
```
--------------------------------
### Jython Installation Command
Source: https://help.jeecg.com/aigc/flowNodes/nodeCode
Command to install Jython using its installer JAR. Replace 'jython-installer-2.7.4.jar' with the actual downloaded file name.
```bash
java -jar jython-installer-2.7.4.jar
```
--------------------------------
### Quick Start: Cloning and Running JeecgBoot Skills
Source: https://help.jeecg.com/java/lowcode-v2
These commands allow you to quickly set up and run the JeecgBoot Skills locally. After cloning the repository and copying the skills, you can interact with the Claude Code interface to generate systems using natural language.
```bash
git clone https://github.com/jeecgboot/skills.git
cp -r skills/* ~/.claude/skills/
claude
```
--------------------------------
### Frontend Build Commands
Source: https://help.jeecg.com/java/JeecgBoot-use-TongWeb-springboot3
Install frontend dependencies and build the project for production using pnpm.
```bash
pnpm install
pnpm build
```
--------------------------------
### Install Iconify Dependencies
Source: https://help.jeecg.com/ui/config/icongen
Install the necessary Iconify packages for your project.
```bash
yarn add @iconify/iconify
yarn add @iconify/json @purge-icons/generated -D
```
--------------------------------
### 修改 jeecg-system-start/pom.xml - 添加 BES 依赖
Source: https://help.jeecg.com/java/JeecgBoot-Use-BCSAppServer-Embedded-springboot3
注释掉原有的 Tomcat starter,并添加宝兰德 BES 的内嵌容器和 WebSocket 支持的依赖。此步骤是替换 Tomcat 的关键。
```xml
com.bes.appserver
bes-lite-spring-boot-starter
11.5.0.009
com.bes.appserver
bes-websocket
11.5.0.009
```
--------------------------------
### Install Claude Code on Windows CMD
Source: https://help.jeecg.com/java/setup/tools
This command downloads and runs the Claude Code installer script in Windows Command Prompt. Ensure Git for Windows is installed first.
```cmd
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
```
--------------------------------
### Start Jeecg-Demo Service
Source: https://help.jeecg.com/java/springcloud/switchcloud/monomer
Uncomment and execute the startup class for the jeecg-demo microservice.
```java
项目:jeecg-server-cloud/jeecg-demo-cloud-start
启动类:org.jeecg.JeecgDemoCloudApplication
```
--------------------------------
### Commit Message Example
Source: https://help.jeecg.com/ui/config/guifan
An example of a correctly formatted commit message following the specified conventions.
```git
git commit -m 'feat(home): add home page'
```
--------------------------------
### Initializing useForm with Props
Source: https://help.jeecg.com/ui/component/FormBak
This example shows the basic initialization of `useForm` with optional props. The `register` function is returned to be passed to the `BasicForm` component.
```javascript
const [register, methods] = useForm(props);
```
--------------------------------
### Start Xxljob Admin Service
Source: https://help.jeecg.com/java/springcloud/switchcloud/monomer
Execute the XxlJobAdminApplication startup class to launch the Xxljob admin service. Ensure the database and Nacos configurations are updated.
```java
项目:jeecg-server-cloud\jeecg-visual\jeecg-cloud-xxljob
启动类:src\main\java\com\xxl\job\admin\XxlJobAdminApplication.java
- 访问:http://localhost:9080/xxl-job-admin
- 账号:admin/123456
```
--------------------------------
### Install Claude Code with WinGet
Source: https://help.jeecg.com/java/setup/tools
Install Claude Code using the WinGet package manager on Windows.
```bash
winget install Anthropic.ClaudeCode
```
--------------------------------
### Deploy TongRDS Service Node
Source: https://help.jeecg.com/java/JeecgBoot-use-TongRDS-springboot3
Extract the service node deployment package, copy the license, and configure the listen port, threads, and security settings in cfg.xml. Start the service node using the provided script.
```bash
cd /opt/TongRDS
# 解压服务节点部署包(会创建pmemdb目录)
tar -zxvf TongRDS-2.2.1.8.Node.tar.gz
```
```bash
cp /opt/TongRDS/center.lic /opt/TongRDS/pmemdb/
```
```xml
6200
8
${Server.Listen.MaxConnections:1000}
1024
${Server.Listen.Secure:2}
${Server.Listen.Password:537cb0e6b7fbad3b75f2245e61b4d2e4}
6379
${Server.Listen.RedisPlainPassword:true}
${Server.Listen.RedisPassword:123456}
```
```bash
cd /opt/TongRDS/pmemdb/bin
# 赋予执行权限
chmod +x *.sh
# 启动服务节点
./StartServer.sh
```
```text
Server starting...
Memory cache create ok.
Begin to listen 6200
Waiting for synchronization 10 seconds
Rescuing data..
Rescue data ok.
Begin to listen 6379
JMXServer start at 29094
Server started.
```
```bash
ss -tlnp | grep -E '6200|6379'
```
--------------------------------
### Install Claude Code with Homebrew
Source: https://help.jeecg.com/java/setup/tools
Install Claude Code using the Homebrew package manager on macOS.
```bash
brew install --cask claude-code
```
--------------------------------
### Install Claude Code on Windows PowerShell
Source: https://help.jeecg.com/java/setup/tools
Execute this command in Windows PowerShell to install Claude Code.
```powershell
irm https://claude.ai/install.ps1 | iex
```
--------------------------------
### Jeecg-Boot ShardingSphere Starter Dependency (No Tests)
Source: https://help.jeecg.com/java/advanced/fenku
Include this dependency if you do not require test cases for ShardingSphere integration.
```xml
org.jeecgframework.boot
jeecg-boot-starter-shardingsphere
```
--------------------------------
### Start Sentinel Dashboard
Source: https://help.jeecg.com/java/springcloud/switchcloud/monomer
Launch the Sentinel dashboard by executing the JeecgSentinelApplication startup class. Default credentials are provided for login.
```java
项目:jeecg-server-cloud\jeecg-visual\jeecg-cloud-sentinel
启动类:src\main\java\com\alibaba\csp\sentinel\dashboard\JeecgSentinelApplication.java
-访问:http://localhost:9000
-账号密码:sentinel/sentinel
```
--------------------------------
### Kotlin Script Example (Not Supported)
Source: https://help.jeecg.com/aigc/flowNodes/nodeCode
Example of a Kotlin script. Note that Kotlin scripting is currently not supported in this node.
```kotlin
fun main(params: MutableMap): Map {
if (params["llmRes"] is String) {
val llmRes = params["llmRes"] as String
val resLength = llmRes.length
params["llmRes"] = "$llmRes\n字数1:$resLength"
}
return mapOf("result" to params["llmRes"])
}
```
--------------------------------
### Shell Command Mode Skill Loading Logs
Source: https://help.jeecg.com/aigc/guide/skillsGuide
Example log output confirming successful loading of Shell Skills and registration of the 'run_shell_command' tool.
```log
[LLMHandler] Skills loaded (Shell Mode): 2 from D:\jeecg-ai-skill-shell ← Shell Skills 加载成功
[LLMHandler] Shell skill tool registered: run_shell_command ← Shell 命令工具注册成功
```
--------------------------------
### Get All Datasets API
Source: https://help.jeecg.com/java/ai/skills/skill-jimureport
Use this GET request to retrieve a tree of all datasets associated with a specific report ID.
```http
GET /jmreport/field/tree/{reportId}
```
--------------------------------
### JSelectDept in BaseForm Example
Source: https://help.jeecg.com/ui/component/JSelectDept
Example of using JSelectDept within a BaseForm component, configuring custom keys for row and label.
```javascript
{
field: 'user2',
component: 'JSelectDept',
label: '选择示例',
helpMessage: ['component模式'],
componentProps:{
labelKey:'departName',
rowKey:'orgCode'
}
}
```
--------------------------------
### Minidao @Param Annotation Usage Example
Source: https://help.jeecg.com/minidao/MiniDaoIntrFeatures/SQLParameterUsage
Example of using the @Param annotation to tag method parameters for SQL queries.
```java
Map getMap2(@Param("empno") String empno,@Param("name")String name);
```
--------------------------------
### Start Gateway Service
Source: https://help.jeecg.com/java/springcloud/switchcloud/monomer
Launch the gateway service by executing its startup class. Successful startup allows access to the API documentation.
```java
项目:jeecg-server-cloud\jeecg-cloud-gateway
启动类:org.jeecg.JeecgGatewayApplication
```
--------------------------------
### Example User Query for Default Response
Source: https://help.jeecg.com/aigc/start/flowApp
An example question to test the AI's default response when the query is out of scope.
```text
what can you do?
```
--------------------------------
### Create Big Screen and Add Components using bi_utils
Source: https://help.jeecg.com/java/ai/skills/skill-bigscreen
Initializes the API, creates a big screen page with specified parameters, and adds various components such as text, number indicators, line charts, bar charts, pie charts, and decorative elements. Finally, it saves the page and prints its ID. Ensure you have the correct API endpoint and token.
```python
from bi_utils import *
init_api('https://api3.boot.jeecg.com', 'your-token')
# 创建大屏(style='bigScreen',像素坐标)
page_id = create_page('销售数据大屏', style='bigScreen', theme='dark',
background_image='/img/bg/bg4.png')
# 页面主标题
add_text(page_id, 'CRM 数据大屏', x=560, y=15, w=800, h=60,
font_size=42, color='#ffffff', font_weight='bold',
text_align='center', letter_spacing=5)
# 数字指标
add_number(page_id, '今日销售额', x=50, y=100, w=400, h=200,
value=128560, prefix='¥', suffix='元')
# 折线图
add_chart(page_id, 'JLine', '销售趋势', x=50, y=320, w=860, h=380,
categories=['1月','2月','3月','4月','5月','6月'],
series=[{'name':'销售额', 'data':[820,932,901,934,1290,1330]}])
# 柱状图
add_chart(page_id, 'JBar', '部门业绩', x=950, y=320, w=860, h=380,
categories=['研发部','销售部','市场部','运营部'],
series=[{'name':'业绩', 'data':[320,302,341,374]}])
# 饼图
add_chart(page_id, 'JPie', '客户来源', x=50, y=700, w=500, h=350,
pie_data=[
{'name':'直接访问', 'value':335},
{'name':'邮件营销', 'value':310},
{'name':'联盟广告', 'value':234},
])
# 装饰元素
add_border(page_id, x=30, y=80, w=440, h=240, border_type=1, color='#00BAFF')
add_decoration(page_id, x=660, y=20, w=600, h=60, deco_type=5, color='#00BAFF')
save_page(page_id)
print(f'大屏创建成功!ID: {page_id}')
```
--------------------------------
### Basic JVxeTable Configuration
Source: https://help.jeecg.com/ui/component/JVxeTable/demo
Demonstrates the fundamental setup of the JVxeTable component with common props like toolbar, row numbers, selection, and expandable rows.
```html
```
--------------------------------
### Groovy Script Example
Source: https://help.jeecg.com/aigc/flowNodes/nodeCode
Example of a Groovy script for the node. Similar to JavaScript, it appends the length of 'llmRes' to itself and returns it as 'result'.
```groovy
def main(params) {
if (params.llmRes) {
def resLength = params.llmRes.length()
params.llmRes += "\n字数:" + resLength
}
return [result: params.llmRes]
}
```
--------------------------------
### Navigate to TongWeb Bin Directory
Source: https://help.jeecg.com/java/tongweb-deploy
Change directory to the TongWeb installation's bin folder to access the command-line deployment tools.
```bash
% cd /opt/TongWeb7.0.4.9_M1_Enterprise_Linux/bin
```
--------------------------------
### Jeecg-Boot ShardingSphere Starter Dependency (With Tests)
Source: https://help.jeecg.com/java/advanced/fenku
Use this dependency to include test cases for ShardingSphere integration, facilitating testing of sharding logic, such as distributing logs based on type.
```xml
org.jeecgframework.boot
jeecg-cloud-test-shardingsphere
${jeecgboot.version}
```
--------------------------------
### Install Claude Code on macOS/Linux/WSL
Source: https://help.jeecg.com/java/setup/tools
Use this command to install Claude Code on macOS, Linux, or Windows Subsystem for Linux environments.
```bash
curl -fsSL https://claude.ai/install.sh | bash
```
--------------------------------
### 创建MySQL和Redis容器
Source: https://help.jeecg.com/java/docker/springcloud
使用docker-compose-base.yml文件启动MySQL和Redis的Docker容器。此命令在后台运行(-d)。
```bash
docker-compose -f docker-compose-base.yml up -d
```