Trae 是由字节跳动(ByteDance)推出的一款AI 原生集成开发环境(IDE),简单来说,它是一款专为程序员打造的、深度集成了人工智能的“写代码神器”。

你可以把它理解为一个“能自己写代码、修 Bug 的智能编程助手”。它基于 VS Code 的内核开发的,因此如果习惯用 VS Code,上手 Trae 会非常顺滑。

1.安装

官网:

https://www.trae.cn/

下载:

下载后的文件:

直接双击安装即可。

2.界面介绍

进入trae,可以看到去界面布局和VsCode非常相似,所以我们主要是学习右边的ai相关的知识。

1.ctrl+u可以快速调出侧边栏,如果选中了代码ctrl+u,会把选中的代码提问词里。

2.@符号可以选择模式

chat模式类似于你问我答的形式,比如之前的腾讯元宝,deepseek等

Builder模式可以根据需求描述直接在目录里生成代码文件。

不管是chat模式还是Builder模式,界面是一致的。

3.上下文引用

直接粘贴和使用 # 引用在技术原理、效率和准确度上有着本质的区别。#引用这通常不计入你的“对话记忆”限制(或者占用极少)

4.上传图片,语音输入,多模态。

3.Builder模式基本演示

chat模式主要是根据我们输入的提示词做出回答,而Builder模式可以根据需求描述直接在目录里生成代码文件。

新建一个springboot项目,生成一个HelloController方法,我访问hello返回字符串Hello,你好。

点击新建项目:

生成了四个文件,这里选择全部保留:

这里配置了jdk

查看HelloController:

package com.example.demo.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello, 你好";
    }
}

启动类:

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
        System.out.println("Hello, 你好");
    }
}

依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
         http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>1.0.0</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Spring Boot Demo Project</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.14</version>
        <relativePath/>
    </parent>

    <properties>
        <java.version>17</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

application.properties:

server.port=8080

右击启动:

报错:

org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.78 failed to transfer from https://repo.maven.apache.org/maven2 during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of central has elapsed or updates are forced. Original error: Could not transfer artifact org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.78 from/to central (https://repo.maven.apache.org/maven2): Read timed out

org.eclipse.aether.transfer.ArtifactTransferException: org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.78 failed to transfer from https://repo.maven.apache.org/maven2 during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of central has elapsed or updates are forced. Original error: Could not transfer artifact org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.78 from/to central (https://repo.maven.apache.org/maven2): Read timed out
	at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.newException(DefaultUpdateCheckManager.java:235)
	at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.checkArtifact(DefaultUpdateCheckManager.java:201)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.gatherDownloads(DefaultArtifactResolver.java:586)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:525)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:449)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:261)
	at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:353)
	at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:184)
	at org.apache.maven.project.DefaultProjectBuilder.resolveDependencies(DefaultProjectBuilder.java:224)
	at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:202)
	at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:123)
	at org.eclipse.m2e.core.internal.IMavenToolbox.readMavenProject(IMavenToolbox.java:97)
	at org.eclipse.m2e.core.internal.project.registry.DefaultMavenDependencyResolver.lambda$0(DefaultMavenDependencyResolver.java:70)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:462)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:342)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:281)
	at org.eclipse.m2e.core.internal.project.registry.DefaultMavenDependencyResolver.resolveProjectDependencies(DefaultMavenDependencyResolver.java:66)
	at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:584)
	at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.lambda$5(ProjectRegistryManager.java:492)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:462)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:342)
	at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:490)
	at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:370)
	at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:322)
	at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration0(ProjectConfigurationManager.java:388)
	at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.lambda$3(ProjectConfigurationManager.java:340)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:462)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:342)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:281)
	at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:1094)
	at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:339)
	at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:326)
	at org.eclipse.jdt.ls.core.internal.managers.MavenBuildSupport.update(MavenBuildSupport.java:82)
	at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager$UpdateProjectsWorkspaceJob.updateProject(ProjectsManager.java:805)
	at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager$UpdateProjectsWorkspaceJob.runInWorkspace(ProjectsManager.java:766)
	at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:43)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

找不到依赖。trae默认会使用c盘下的仓库和配置文件。

可以在项目的settings.json里上设置,添加userSettings配置,使用D盘下的仓库。

{
  "redhat.telemetry.enabled": true,
  "workbench.colorTheme": "Deep Blue",
  "maven.executable.options": "",
    // 添加下面的配置。
  "java.configuration.maven.userSettings": "D:\\software\\java\\maven\\apache-maven-3.6.3\\conf\\settings.xml"
}

但是这样只在此项目里生效,打开新项目一样存在问题,所以可以在全局配置文件里修改:

比如我这里全局配置文件的地址是:C:\Users\29531\AppData\Roaming\Trae CN\User

再次右击启动:

启动成功!

浏览器访问也正常。
 

我们也可以直接使用mvn的命令启动项目:
我们可以在终端里通过下面命令启动springboot项目:

D:\software\java\maven\apache-maven-3.6.3\bin\mvn.cmd spring-boot:run

可以启动成功,但是每次输出这么长的地址太麻烦了,添加配置:

{
  "redhat.telemetry.enabled": true,
  "workbench.colorTheme": "Deep Blue",
  "maven.executable.options": "",
    // 添加下面的命令
  "terminal.integrated.env.windows": {
    "Path": "D:\\software\\java\\maven\\apache-maven-3.6.3\\bin;C:\\Windows;C:\\Windows\\System32;C:\\Windows\\System32\\WindowsPowerShell\\v1.0;C:\\Program Files\\dotnet;D:\\software\\java\\jdk\\jdk-17.0.7\\bin;C:\\Users\\29531\\AppData\\Local\\Microsoft\\WindowsApps;D:\\software\\java\\nodejs;C:\\Users\\29531\\AppData\\Local\\Programs\\Microsoft VS Code\\bin"
  },
      "java.configuration.maven.userSettings": "D:\\software\\java\\maven\\apache-maven-3.6.3\\conf\\settings.xml"

}

这样只需要在终端输入下面命令即可运行springBoot:

maven spring-boot:run

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐