如何使用​win10内置的linux系统启动spring-boot项目

1.安装win10内置linux子系统

1.1.安装linux子系统

1.1.1.升级或者重装linux系统

1.系统要求

需要升级win10到一周年纪念版,或者 重装系统

2.重装系统

笔者结果测试发现下面的系统重装后可以启用linux子系统

cn_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9057083.iso
cn_windows_10_multi-edition_vl_version_1709_updated_sept_2017_x64_dvd_100090774.iso

1.1.2.启用linux子系统

step1.启用开发人员模式

(16215版之后不再需要开发人员模式)

设置-->更新和安全-->针对开发人员

step2.启用linux子系统

控制面板-->程序和功能-->启用或关闭windows功能

1.1.3.在线安装ubuntu系统

打开Microsoft Store安装ubuntu系统

1.1.4.离线安装ubuntu系统

下载安装包,下载自己想要安装的Linux系统。

参考链接:https://docs.microsoft.com/en...

下载Ubuntu 16.04.

Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing

也可以使用curl下载,但是需要先安装curl

curl.exe -L -o ubuntu-1604.appx https://aka.ms/wsl-ubuntu-1604

安装

Add-AppxPackage .\app_name.appx

1.1.5.启动ubuntu系统

启动ubuntu系统

安装完成后打开搜索菜单,输入系统名字搜索启动

输出需要设置的用户和密码

你相信吗,仅仅只有15.4MB

安装目录

C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc

home目录

C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home

1.2.开启ssh-server

1.2.1.相互复制文件

ubuntu的bash窗口窗与在xshell不同,通过shift+v无法黏贴,并且在输入界面鼠标右键无法使用。粘贴文件的方法如下

右击标题栏==> Edit(编辑) ==> Mark/Paste(标记并复制/粘贴)操作

这样还是很麻烦,可以调整对话框,在弹出的菜单中有一个Properties对话框属性菜单,点击进入下图

勾选快速编辑、快速插入模式,这两种模式支持鼠标右键选中,左键黏贴操作。

最后,最好的方式是,在ubuntu上启动ssh服务,通过xshell连接上操作会更好。

1.2.2.修改apt源

参考链接

https://developer.aliyun.com/...

用你熟悉的编辑器打开:

/etc/apt/sources.list

替换默认的archive.ubuntu.com为mirrors.aliyun.com

修改后的内容

ubuntu18.04

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

ubuntu 20.04(focal)

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

更新

apt-get update

1.2.3.启用ssh

1.安装ssh

apt-get -y install openssh-server

2.修改配置文件,一般不需要修改

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
vi /etc/ssh/sshd_config
# 修改端口号,避免和 Windows ssh 服务端口冲突
Port 2222
#StrictModes yes # 注释
# 使用密码登录
PasswordAuthentication yes
# 允许使用 root 用户登录
PermitRootLogin yes

3.设置root账号密码

sudo -s
passwd root

4.启动ssh

service ssh start

5.如果提示“sshd error: could not load host key”,则用下面的命令重新生成

rm /etc/ssh/ssh*key
dpkg-reconfigure openssh-server

使用xshell连接127.0.0.1输入账号和密码即可

1.2.4.配置PS1变量

自行百度什么事linux的PS1变量

export PS1="\[\e[1;32;40m\][\u@\h \W]\\$ \[\e[m\]"

2.搭建开发环境

2.1.搭建java开发环境

2.1.1.安装java和maven

mkdir /usr/java
tar -xf jdk-8u211-linux-x64.tar.gz -C /usr/java/
mdkir /usr/maven
tar -xf litongjava-apache-maven-3.3.9.tar.gz -C /usr/maven/

配置环境变量

export JAVA_HOME=/usr/java/jdk1.8.0_211
export M2_HOME=/usr/maven/apache-maven-3.3.9
export PATH=$JAVA_HOME/bin:$M2_HOME/bin:$PATH

配置maven使用windows的maven本地库目录,maven本地库在linux中对应的目录是/mnt/d/dev_mavenRepository/

settings.xml的内容如下

cat /usr/maven/apache-maven-3.3.9/conf/settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>/mnt/d/dev_mavenRepository/</localRepository>
 <pluginGroups>
 </pluginGroups>
 <proxies>
 </proxies>
 <servers>
 </servers>
 <mirrors>
 <mirror>
  <id>aliyun</id>
  <name>aliyun</name>
  <mirrorOf>*</mirrorOf>
  <url>https://maven.aliyun.com/repository/public</url>
 </mirror>
 </mirrors>
 <profiles>
 </profiles>
</settings>

2.1.2.打包和启动spring-boot项目

进行项目目录执行下面的命令打包项目

mvn clean package -DskipTests

进入target目录启动项目

cd target/
java -jar *.jar

可以明显的看出,java程序使用了近1G的内存

总结

到此这篇关于如何使用​win10内置的linux系统启动spring-boot项目的文章就介绍到这了,更多相关win10 linux启动spring-boot项目内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Linux编辑启动、停止与重启springboot jar包脚本实例

    前言 springboot的配置文件中,配置文件的名字都有各自的意义跟用途 dev 开发环境 prod 生产环境(默认) test 测试环境 加载指定配置文件 --spring.profiles.active=prod springboot加载jar包的方式有 // 直接在控制台进行启动,缺点就是控制台关闭项目也就关闭了. java -jar bootdo.jar // 这种方式可以运行在后台,但是如果推出了shell的话,那也会挂 java -jar /bootdo-2.0.0.jar > b

  • Linux启动与停止spring boot工程的脚本示例

    在springboot项目启动有三种方式: 1.运行主方法程序 2.使用命令mvn spring-boot:run 在命令行运行 3.使用 mvn packpage打包位jar文件以后,使用java -jar yourapp.jar命令行运行 一般我们在开发的时候经常使用的是前面两种运行方式,在部署实施的时候使用的第三种方式,下面我们就重点说明下载linux环境中运行和停止springboot项目的指令和脚本: 一.指令 nohup 不挂断运行指令 一般在linux中可以直接使用: java -

  • springboot 在linux后台运行的方法

    首先需要进到自己springboot项目的根目录,然后执行如下linux命令 nohup java -jar 自己的springboot项目.jar >日志文件名.log 2>&1 & 命令详解: nohup:不挂断地运行命令,退出帐户之后继续运行相应的进程. >日志文件名.log:是nohup把command的输出重定向到当前目录的指定的"日志文件名.log"文件中,即输出内容不打印到屏幕上,而是输出到"日志文件名.log"文件中

  • Linux下部署springboot项目的方法步骤

    最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上. 1.在pom文件中添加springboot的maven插件 <build> <plugins> <plugin> <groupid>org.springframework.boot</groupid> spring-boot-maven-plugin</artifactid> </p

  • SpringBoot配置devtools实现热部署的方法

    spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用. devtools的原理 深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个r

  • Linux 启动停止SpringBoot jar 程序部署Shell 脚本的方法

    废话不多说了,先给大家上代码,具体代码如下所示: #!/bin/bash cd `dirname $0` CUR_SHELL_DIR=`pwd` CUR_SHELL_NAME=`basename ${BASH_SOURCE}` #修改这里jar包名即可 JAR_NAME="xxxxxxxxxxxx.jar" JAR_PATH=$CUR_SHELL_DIR/$JAR_NAME #JAVA_MEM_OPTS=" -server -Xms1024m -Xmx1024m -XX:Pe

  • springboot打包部署到linux服务器的方法

    1.由于springboot集成了tomcat,所以打包的时候不再使用war,而是使用jar <groupId>cn</groupId> <artifactId>back</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> 2.将springboot启动类添加继承SpringBootServletInitialize

  • 如何使用​win10内置的linux系统启动spring-boot项目

    1.安装win10内置linux子系统 1.1.安装linux子系统 1.1.1.升级或者重装linux系统 1.系统要求 需要升级win10到一周年纪念版,或者 重装系统 2.重装系统 笔者结果测试发现下面的系统重装后可以启用linux子系统 cn_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9057083.iso cn_windows_10_multi-edition_vl_version_1709_updated_

  • 选择Spring Boot项目的内嵌容器的理由

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. Spring Boot继承了Spring的优点,并新增了一些新功能和特性: (1)SpringBoot是伴随着Spring4.0诞生的,一经推出,引起了巨大的

  • 从零开始让你的Spring Boot项目跑在Linux服务器

    目录 1 搭建Linux服务器 1.1 购买阿里云服务器或安装虚拟机 1.2 安装JDK1.8(CentOS 8为例) 1.3 安装MySQL 1.4 安装Maven(非必要) 2 项目部署运行 2.1 项目编译打包(Windows环境下打包成jar文件) 2.2 部署运行 2.3 注意事项 2.4 常见问题 总结 1 搭建Linux服务器 1.1 购买阿里云服务器或安装虚拟机 这里建议是CentOS 7.X或CentOS 8.X,当然其他的Linux如deepin.Ubuntu也可以,只是软件

  • 使用linux部署Spring Boot程序

    SpingBoot的学习总算告一段落了,但它还留给了我们一个疑问,那就是程序在linux服务器上应该怎么部署?使用命令启动程序后如果ssh断开了程序会不会被shutdown?对于第一个问题比较好解决,只需要保证jdk安装正确就不会有太大问题.棘手的问题是后面这个,解决问题的关键就是要保证程序以守护进程(后台方式)运行.这次就分享下linux下如何正确部署程序 为了解决这个问题,我查阅网上的资料找到了下面3种解决方案 1   把jar包弄成系统服务(不推荐) 这种方法缺点也比较明显,那就是容易出现

  • 详解springboot-修改内置tomcat版本

    详解springboot-修改内置tomcat版本 1.解析Spring Boot父级依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.6.RELEASE</version> </parent> 这块配置就是Spring

  • 全面解析Spring Security 内置 Filter

    1. 前言 上一文我们使用 Spring Security 实现了各种登录聚合的场面.其中我们是通过在 UsernamePasswordAuthenticationFilter 之前一个自定义的过滤器实现的.我怎么知道自定义过滤器要加在 UsernamePasswordAuthenticationFilter 之前.我在这个系列开篇说了 Spring Security 权限控制的一个核心关键就是 过滤器链 ,这些过滤器如下图进行过滤传递,甚至比这个更复杂!这只是一个最小单元. Spring Se

  • linux shell内置判断语句

    内置判断,成功的时候返回0,不成功返回非零 test  判断表达式 [ 判断表达式 ]       注意前后必须留空格哦 数值运算 -eq   等于 -ne   不等于 -gt     大于 -ge    大于等于 -lt 小于 -le 小于等于 字符串运算 =  等于 != 不等于 -z   是否为空 -n 是否不为空 文件运算 -r  是否存在并可读 -w 是否存在并可写 -x 是否存在并可执行 -f 是否存在此文件 -d 是否存在此目录 总结 以上所述是小编给大家介绍的linux shel

  • linux shell字符串内置的常用操作(获取长度、查找、替换)

    之前我们也发过相关的文章.这里呢,推荐大家使用一些内置的函数. 在编写shell程序时,经常会涉及到字符串相关操作.有许多命令语句,如awk,sed都能够做字符串各种操作. 事实上shell内置一系列操作符号,能够达到相似效果,使用内部操作符会省略启动外部程序等时间,因此速度会很的快.如果内置的操作符能够做到的,优先使用内置的. 1 读取字符串值 表达式 含义 ${var} 变量var本来的值 ${var-default} var没声明返回default,但不改变var的值 ${var:-def

  • Ubuntu中为Android系统实现内置Java应用程序测试Application Frameworks层的硬件服务

    我们在Android系统增加硬件服务的目的是为了让应用层的APP能够通过Java接口来访问硬件服务.那么, APP如何通过Java接口来访问Application Frameworks层提供的硬件服务呢?在这一篇文章中,我们将在Android系统的应用层增加一个内置的应用程序,这个内置的应用程序通过ServiceManager接口获取指定的服务,然后通过这个服务来获得硬件服务.        一. 参照在Ubuntu Android实现Application Frameworks层增加硬件访问服

  • 详解Angular的内置过滤器和自定义过滤器【推荐】

    在实际的开发过程中,很多後端返回给我们的数据都是需要格式化处理的,在angular中为我们内置提供了filter指令,可以很方便的对数据进行处理.首先我们看看在视图中是如何使用过滤器的. 1.currency(货币)格式化 <div ng-controller="Aaa"> <p>{{name | currency:'¥'}}</p> </div> <script type="text/javascript"&g

随机推荐