目录
2.1.1 工程依赖关系
2.1.2 工程聚合关系
2.2 maven的核心:生命周期和阶段
2.3 功能实现:插件和Goal
2.4 仓库(Repository)
2.4 小结:MAVEN核心概念
3 Maven3 安装
4 常见应用
第三节:用nexus搭建maven私服
第四节:eclipse+nexus+maven+JAVA Project管理实战
首页 数据库 mysql教程 搭建 Nexus2.7.2

搭建 Nexus2.7.2

Jun 07, 2016 pm 03:27 PM
搭建

搭建 Nexus2.7.2-03 Maven3.1.1 JAVA Project 管理 第一节:Nexus 研究汇总 1 Nexus 概念、作用 仓库管理器有两个服务目的:首先它的角色是一个高度可配置的介于你的组织与公开Maven仓库之间的代理,其次它为你的组织提供了一个可部署你组织内部生成 的构件

搭建 Nexus2.7.2-03 + Maven3.1.1  JAVA Project 管理


第一节:Nexus 研究汇总

1 Nexus 概念、作用

     仓库管理器有两个服务目的:首先它的角色是一个高度可配置的介于你的组织与公开Maven仓库之间的代理,其次它为你的组织提供了一个可部署你组织内部生成

的构件的地方。代理Maven仓库有很多好处。对于一开始使用Maven的情况来说,通过为所有的来自中央Maven仓库的构件安装一个本地的缓存,你将加速组织内部的

所有构建.


2 Nexus 安装

1):官方下载http://www.sonatype.org/nexus/  安装包,包下载分二种1:含有JETTY  WEB容器的BUNDLE包 2:不含WEB容器的WAR包

2):解压,以当前根目录D:\ThridFarme为例:

打开:${NEXUS_HOME}\bin\jsw\windows-x86-64,依次运行install-nexus.bat、start-nexus.bat,运行nexus

   官网说明: Open Nexus Professional in a Web Browser,ifyou accept all of the defaults, Nexus Professional can be accessed by pointingyour browser at http://localhost:8081/nexus and entering in the following trialcredentials:

  username: admin  password: admin123


3 Nexus 管理操作

即http://localhost:8081/nexus管理,暂缺


第二节:Maven3 研究汇总

1 Maven3 概念、作用

Maven3概念:

Maven是基于项目对象模型(POM),通过一小段描述信息来管理项目的构建,也是报告和文档的软件项目管理工具; 它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(DependencyManagement System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。使用Maven时,用一个明确定义的项目对象模型来描述你的项目,Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件

Maven 有一个项目生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的目标步骤,直到到达你指定的生命周期,过程中Maven会运行许多默认的插件目标,像编译compile和创建JAR(jar) 文件类似工作。

Maven3作用:

Maven能够很方便管理项目的构建、项目报告、生成站点、管理JAR文件等等。

MAVEN概念模型:

搭建 Nexus2.7.2

图1


POM简介:包含了四类描述和配置项目

1) POM关系:一个项目很少孤立存在;它会依赖于其它项目,可能从父项目继承POM设置,它要定义自身的坐标,可能还会包含子模块。

2)构建设置:在这一部分,我们自定义Maven构建的默认行为。我们可以更改源码和测试代码的位置,可以添加新的插件,可以将插件目标绑定到生命周期,我们还可以自定

义站点生成参数。

3)总体信息:它包含了一个项目的而名称,项目的URL,发起组织,以及项目的开发者

贡献者列表和许可证。

4)构建环境:构建环境包含了一些能在不同使用环境中 激活的profile。例如,在开发过程中你可能会想要将应用部署到一个而开发服务器上,而在产品环境中你会需要将

应用部署到产品服务器上。构建环境为特定的环境定制了构建设置,通常它还会

由~/.m2中的自定义settings.xml补充。

搭建 Nexus2.7.2

图2


2 Maven3 核心流程

2.1maven管理的目标:工程(Software  Project)

搭建 Nexus2.7.2

图3

软件工程的唯一标识是由团体标识的约定ID(groupId)、单独项目的唯一标识符(artifactId)、版本(version) 共同决定;

PackageType:每个工程都有一个打包类型,可以是jar, war, ear 或 pom,打包类型决定工程最终产物的类型,其中pom类型用于构件多模块工程。

工程之间有两种关系:依赖(dependency)和聚合()

依赖:是类与类之间的连接. 表示一个类依赖于另一个类的定义. 依赖关系总是单向的 。可以简单的理解,就是一个类A使用到了另一个类B

搭建 Nexus2.7.2

图4

关联(association)关系: 表示类与类之间的联接, 体现的是两个类、或者类与接口之间语义级别的一种强依赖关系,它使一个类知道另一个类的属性和方法. 关联可以使用单箭头表示单向关联, 使用双箭头或不使用箭头表示双向关联, 关联有两个端点, 在每个端点可以有一个基数, 表示这个关联的类可以有几个实例. 常见的基数(0..1:0、0..*、1、1..*) 

搭建 Nexus2.7.2

图5


聚合: 关联关系的一种特例, 是强的关联关系. 聚合是整体和个体之间的关系,即has-a的关系,此时整体与部分之间是可分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享

搭建 Nexus2.7.2

图6

2.1.1 工程依赖关系

(1)依赖关系的管理,是maven最为强大特征之一。一个工程可以依赖多个其他工程, 通过工程的唯一标识(groupId+artifactId+version)可以明确指明依赖的库及版本,而且能够处理依赖关系的传递(transitive dependencies),如图7:

搭建 Nexus2.7.2

图7

(2)maven可以指定依赖的作用范围(scope),包括以下几种:

搭建 Nexus2.7.2

图8

compile范围(默认):编译范围依赖,在编译,测试和运行中都依赖于类包,在所有的classpath中可用,同时它们也会被打包。

test范围: JUnit测试范围(test)的依赖,运行compiler:testCompile和surefire:test目标的时候才会将POM依赖JAR包被加入classpath中

   provided范围:已提供范围依赖,开发过程只有在编译(classpath)和测试时需要一个类库,而该类库在运行的时候由容器提供,它们不是传递性的,也不会被打包,不会被捆绑在构建的输出中,可用于排除WAR文件中特定的依赖。如Servlet API的JAR文件包不会在web应用WEB-INF/lib目录下生成。

Runtime:运行时范围依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如,你可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC驱动实现。

system(系统范围):system范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中JAR文件的路径。这么做是为了允许基于本地对象编译,而这些对象是系统类库的一部分。这样的构件应该是一直可用的,Maven也不会在仓库中去寻找它。如果你将一个依赖范围设置成系统范围,你必须同时提供一个systemPath元素。

(不推荐使用的,应该尽量从公共或定制的Maven仓库中引用依赖)。

Maven如何解决依赖关系的传递性可能导致依赖的版本、scope等发生冲突问题? maven提供了仲裁机制(最短路径原则、依赖的排除 、依赖的显示声明)。

查看项目依赖关系树:mvn dependency:tree

2.1.2 工程聚合关系

前面提到pom类型用于于构件多模块工程,这体现了project之间的一种聚合关系:将一系列小的模块聚合成整个产品。

通过聚合后的工程可以同时管理每个相关模块的构建、清理、文档等工作。 聚合关系通过在子工程中指定一个pom类型的project作为父project来定义。

搭建 Nexus2.7.2

搭建 Nexus2.7.2

图9

2.2 maven的核心:生命周期和阶段

搭建 Nexus2.7.2

图10

maven将工程(Project)的构建过程理解为不同的生命周期(LifeCycle)和阶段(Phase)。 在工程的构建过程中,存在着不同的生命周期,这些生命周期互相独立,之间也没有一定的顺序关系。 每个生命周期又划分为不同的阶段(Phase)。阶段之间有明确的顺序关系, 同一生命周期内的阶段必须按顺序依次执行。

maven内置了三个生命周期,并为每个生命周期内置了一些阶段。下面列举出maven内置的生命周期及主要的阶段: 

搭建 Nexus2.7.2

图11

·    default:构建(Build)

1.  validate:验证项目是否正确,所有必需的信息是否可用。

2.  compile:编译项目中的代码。

3.  test:用相关的单元测试框架测试编译后的代码,这些运行的测试并不会随项目打包和布署。

4.  package:将编译后的代码打包成相应的格式文件,如jar包。

5.  integration-test: 如果需要在一个综合环境中运行我们的测试,这个阶段将会运行和布署项目到该环境中。

6.  verify: 检查项目的包是否正确和符合要求。

7.  install:将包安装到本地maven仓库,可以让其他项目作为依赖使用该包。

8.  deploy:将包发布到远程的maven仓库,并提供给其他开发者使用。

·        clean:清理

1.  pre-clean 准备清理

2.  clean 执行清理工作

3.  post-clean 执行清理后的后续工作

·        site:生成项目文档和站点

1.  pre-site 准备生成

2.  site 生成项目站点和文档

3.  post-site 执行生成文档后的后续工作

4.  site-deploy 发布项目文档

更详细的phase说明参考: http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference

   再者像mvn package:此命令行并没有指定一个插件目标,而是指定了一个Maven生命周期阶段。阶段是在被Maven称为“构建生命周期”中的一个个步骤。生命周期是包含在一个项目构建中的一系列有序的阶段。

搭建 Nexus2.7.2

图12

2.3 功能实现:插件和Goal

搭建 Nexus2.7.2

图13

Maven中定义的工程周期和阶段只是抽象的概念,不涉及具体的功能。 具体的功能由插件(Plugin)实现。一个Maven插件是一个单个或者多个目标(Goal)的集合。Maven有一些简单但核心的插件,像Jar插件,它包含了一组创建JAR文件的目标,Compiler插件,它包含了一组编译源代码和测试代码的目标,或者Surefire插件,它包含一组运行单元测试和生成测试报告的目标。而其它的,更有专门的插件包括:Hibernate3插件,用来集成流行的持久化框架Hibernate。Maven也提供了自定义插件的能力。

搭建 Nexus2.7.2

图14

为了解耦插件的功能和工程阶段,实现高度的可配置性,maven规定插件只是实现目标的功能, 通过配置来决定在哪个阶段执行(Execution)哪些目标操作。 甚至可以把一个Goal绑定到多个Phase,以实现复用。

maven内置了一些默认的插件,并根据不同的工程packing类型在各个phase中默认绑定了一些goal。 下表中列出default生命周期中各阶段默认绑定的goal,其中goal按照管理使用plugin name:goalname的方式标记:

搭建 Nexus2.7.2

图15

Site:

最后需要说明的是,maven的插件是一种packaging类型为maven-plugin的project, 可以使用maven project的依赖,配置插件等等一切特性。

2.4 仓库(Repository)

Maven仓库是通过结构来定义的,一个Maven仓库是项目构件的一个集合,这些构件存储在一个目录结构下面,它们的格式能很容易的被Maven所理解。在一个Maven仓库中,所有的东西存储在一个与Maven项目坐标十分匹配的目录结构中。你可以打开浏览器,然后浏览中央Maven仓库http://repo1.maven.org/maven2/ 来看这样的结构。

Maven仓库的标准是按照下面的目录格式来存储构件,相对于仓库的根目录:

////-.

Maven从远程仓库下载构件和插件到你本机上,存储在你的本地Maven仓库里。一旦

Maven已经从远程仓库下载了一个构件,它将永远不需要再下载一次,因为maven会首

先在本地仓库查找插件,然后才是其它地方。

项目依赖于一些既不免费也不公开的包。在这种情况下,你需要要么在你组织的网络里安装一个定制的仓库,要么手动的安装这些依赖。默认的远程仓库可以被替换,或者增加一个你组织维护的自定义Maven仓库的引用。

仓库可以分为本地库(local)和远程库(remote)。本地库通常位于本机的~/.m2/repository文件夹, 远程库最常见的是maven中央库,此外也会有一些私服库用于企业内部。


2.4 小结:MAVEN核心概念

搭建 Nexus2.7.2

图16

 

概念

说明

LifeCycle

生命周期,maven内置default,sie,clean三个生命周期

Phase

阶段,每个生命周期有不同的阶段

Plugin

插件,实现实际的构建功能

Goal

一个插件可以实现多个goal,goal具备具体的功能

Execution

通过配置,决定在某个Phase执行哪些Goal

Project

maven管理的目标:软件工程,小的工程可以聚合成大工程

PackageType

为了便于管理工程,按照构建目标区分成不同的工程类型,如jar,war,ear等

Dependency

依赖,project之间存在依赖关系

DependencyScope

maven对依赖定义了不同的作用范围

Management

可以配置一个工程如何管理依赖关系

Repository

仓库,存放包,分为本地库和远程库

Build

构建的动作。使用maven管理工程,主要是指定将project构建到某个phase



3 Maven3 安装

见:http://blog.csdn.net/jun55xiu/article/category/1439861

验证安装:mvn -version


4 常见应用

1)创建一个Project

 mvn archetype:create -DgroupId=com.mycompany.app

-DartifactId=my-app-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

mvn archetype:generate 固定格式OR create

-DgroupId  组织标识(包名)

-DartifactId项目名称

-DarchetypeArtifactId  原型ArchetypeId:maven-archetype-quickstart,创建一个JavaProject;maven-archetype-webapp,创建一个WebProject

-DinteractiveMode 是否使用交互模式

2)命令

编译源代码  mvn compile

 编译测试代码mvn test-compile

清空mvn clean

  运行测试 mvn test

 生产站点目录并打包 mvn site-deploy

 安装当前工程的输出文件到本地仓库 mvn install

 打包 mvn package

 先清除再打包mvn clean package

 打成jar包mvn jar:jar

生成eclipse项目mvneclipse:eclipse

查看帮助信息mvn help:help

查看maven有哪些项目类型分类  mvn archetype:create -DarchetypeCatalog=intrenal

3)构建一个简单Java项目

mvn archetype:create -DgroupId=cn.luxh.app-DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart-DinteractiveMode=false

4)构建一个简单JAVA WEB项目

mvn archetype:create -DgroupId=cn.luxh.app -DartifactId=my-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false 
登录后复制
回车
登录后复制
cd :/%roo%/my-web-app/,执行:mvn package
登录后复制

   构建成功后,my-web-app项目target目录/my-web-app.war

   集成tomcat、Jetty发布运行,需要配置pom.xml

  Tomcat:

 <span><span>build</span><span>></span></span>
登录后复制
    <span><span>finalName</span><span>></span>my-web-app<span></span><span>finalName</span><span>></span></span>
登录后复制
登录后复制
    <span><span>pluginManagement</span><span>></span></span>
登录后复制
登录后复制
    <plugin></plugin>
登录后复制
                <groupid>org.codehaus.mojo</groupid>
登录后复制
                <artifactid>tomcat-maven-plugin</artifactid>
登录后复制
                <version>1.1</version>
登录后复制
                <configuration></configuration>
登录后复制
                    <path>/wp</path>
登录后复制
                    <port>8080</port>
登录后复制
                    <uriencoding>UTF-8</uriencoding>
登录后复制
                    <url>http://192.168.0.95:8080/manager/html</url>
登录后复制
                    <server>tomcat6</server>
登录后复制
                
登录后复制
            
登录后复制
<span></span><span>pluginManagement</span><span>></span>
登录后复制
登录后复制
    
登录后复制
登录后复制
<span></span><span>build</span><span>></span>
登录后复制
登录后复制
Jetty:
登录后复制
<span><span>build</span><span>></span></span>
登录后复制
    <span><span>finalName</span><span>></span>my-web-app<span></span><span>finalName</span><span>></span></span>
登录后复制
登录后复制
    <span><span>pluginManagement</span><span>></span></span>
登录后复制
登录后复制
    <span><!--</span><span>配置</span><span>Jetty--></span>
登录后复制
      <span><span>plugins</span><span>></span></span>
登录后复制
        <span><span>plugin</span><span>></span></span>
登录后复制
         <span><span>groupId</span><span>></span>org.mortbay.jetty<span></span><span>groupId</span><span>></span>   </span>
登录后复制
         <span><span>artifactId</span><span>></span>maven-jetty-plugin<span></span><span>artifactId</span><span>></span></span>
登录后复制
        <span></span><span>plugin</span><span>></span>
登录后复制
      <span></span><span>plugins</span><span>></span>
登录后复制
<span></span><span>pluginManagement</span><span>></span>
登录后复制
登录后复制
    
登录后复制
登录后复制
<span></span><span>build</span><span>></span>
登录后复制
登录后复制

执行:mvn tomcat:run jetty:run 就可以在8080端口上访问应用

5)标准的Maven JAVA项目生成框架

搭建 Nexus2.7.2

6)Maven的默认设置

在某个项目基础目录执行命令:$ mvn help:effective-pom

见‘Maven Dafalut pom.xml’

7)Maven 齐全POM配置文件要素说明

见‘maven_POM.xml详解’


第三节:用nexus搭建maven私服

见‘搭建Maven私服_并配置Nexus环境(完美版本).pdf’

第四节:eclipse+nexus+maven+JAVA Project管理实战

 后期完善



注:maven个人推荐书籍:Maven权威指南(中文版)以及官网(mvnexmvnref英文版)



本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Vue框架下,如何快速搭建统计图表系统 Vue框架下,如何快速搭建统计图表系统 Aug 21, 2023 pm 05:48 PM

Vue框架下,如何快速搭建统计图表系统在现代网页应用中,统计图表是必不可少的组成部分。Vue.js作为一款流行的前端框架,提供了很多便捷的工具和组件,能够帮助我们快速搭建统计图表系统。本文将介绍如何利用Vue框架以及一些插件来搭建一个简单的统计图表系统。首先,我们需要准备一个Vue.js的开发环境,包括安装Vue脚手架以及一些相关的插件。在命令行中执行以下命

雾锁王国能野地搭建筑吗 雾锁王国能野地搭建筑吗 Mar 07, 2024 pm 08:28 PM

玩家在雾锁王国中进行游戏时可以收集不同的材料用来建造建筑,有很多玩家想知道野地搭建筑吗,雾锁王国能野地是不能搭建筑的,必须要在祭坛的范围内才可以搭建。雾锁王国能野地搭建筑吗答:不能。1、雾锁王国能野地是不能搭建筑的。2、建筑必须要在祭坛的范围内才可以搭建。3、玩家可以自行放置灵火祭坛,但一旦离开了范围,将无法进行建筑搭建。4、我们也可以直接在山上挖个洞当做我们的家,这样不用耗建筑材料。5、玩家自己搭建的建筑中,存在舒适度机制,也就是说,内饰越好,舒适度越高。6、高舒适度将为玩家带来属性加成,例如

CentOS 7下搭建web服务器的网络安全加固技巧 CentOS 7下搭建web服务器的网络安全加固技巧 Aug 05, 2023 pm 01:12 PM

CentOS7下搭建web服务器的网络安全加固技巧web服务器是现代互联网的重要组成部分,因此保护web服务器的安全性非常重要。通过加固网络安全,可以减少风险和避免潜在的攻击。本文将介绍在CentOS7上搭建web服务器时常用的网络安全加固技巧,并提供相应的代码示例。更新系统和软件首先,确保你的系统和软件是最新版本。可以使用以下命令更

CentOS 7下搭建web服务器的最佳实践及注意事项 CentOS 7下搭建web服务器的最佳实践及注意事项 Aug 25, 2023 pm 11:33 PM

CentOS7下搭建web服务器的最佳实践及注意事项引言:在当今互联网时代,web服务器是构建和托管网站的核心组件之一。CentOS7是一个强大的Linux发行版,广泛应用于服务器环境。本文将探讨在CentOS7上搭建web服务器的最佳实践和注意事项,并提供一些代码示例以帮助您更好地理解。一、安装ApacheHTTP服务器Apache是使用最广泛的w

账号矩阵怎么搭建?矩阵搭建有哪些作用? 账号矩阵怎么搭建?矩阵搭建有哪些作用? Mar 23, 2024 pm 06:46 PM

在当下信息充斥的时代,社交媒体平台已经成为人们获取和分享信息的主要途径。对于个人和企业而言,建立一个有效的账号网络以实现信息的最大传播和提升影响力,已成为亟需解决的挑战。一、账号矩阵怎么搭建?1.明确目标人群在构建账号矩阵之前,关键是明确目标受众,深入了解他们的需求、兴趣和消费习惯,这样才能制定更具针对性的内容策略。2.选择合适的平台根据目标人群的特点,选择适合的社交媒体平台进行布局。目前主流的社交媒体平台有微博、微信、抖音、快手等,每个平台都有其独特的用户群体和传播特点,需要根据实际情况进行选

抖音账号怎么搭建最好?账号搭建五件套是什么? 抖音账号怎么搭建最好?账号搭建五件套是什么? Apr 02, 2024 am 09:52 AM

随着移动互联网的快速发展,短视频应用抖音已经成为人们日常生活中不可或缺的一部分。拥有一个高人气的抖音账号,不仅能吸引粉丝关注,还能带来商业价值。那么,如何搭建一个最好的抖音账号呢?一、抖音账号怎么搭建最好?1.定位清晰在创建抖音账号之初,首先要明确自己的定位。你是想成为搞笑幽默的段子手,还是专业知识分享者?明确定位有助于吸引精准粉丝,从而增加账号的价值。2.账号命名一个好的账号名字能让粉丝一眼记住你。账号名字应简洁明了,与自己的定位相关,同时具有一定的创意。避免使用过于常见的名字,以免与他人混淆

CentOS搭建web服务器的日志管理与监控技巧 CentOS搭建web服务器的日志管理与监控技巧 Aug 05, 2023 am 08:33 AM

CentOS搭建web服务器的日志管理与监控技巧Web服务器是现代互联网应用的重要组成部分,而服务器的日志管理与监控是确保服务器稳定运行和故障排查的关键。本文将介绍在CentOS操作系统上如何搭建web服务器,并提供一些日志管理与监控的技巧。一、搭建Web服务器安装ApacheApache是一个流行的开源Web服务器软件。在CentOS上安装Apache很简

在PyCharm中快速安装PyTorch:简易指南 在PyCharm中快速安装PyTorch:简易指南 Feb 24, 2024 pm 09:54 PM

PyTorch安装指南:在PyCharm中快速搭建开发环境PyTorch是当前深度学习领域中备受欢迎的框架之一,具有易用性和灵活性的特点,深受开发者青睐。本文将为大家介绍如何在PyCharm中快速搭建PyTorch的开发环境,方便大家开始深度学习项目的开发。步骤一:安装PyTorch首先,我们需要安装PyTorch。PyTorch的安装通常需要考虑到系统环境

See all articles