IDEA 开发环境配置

发布时间 2024-01-02 23:33:45作者: 不卷轮子锅

  做JAVA开发,现在比做.NET开发更麻烦,光配置一堆环境,几乎就要了亲命。以下是一些常用的操作和工具使用,以及必要配置和查询。现在流行什么前后分离,各种前端框架不停的卷,其实干的事情没有什么差别,反是种种问题越来越多,越做越性能越低。

 

一. nodejs 的安装与配置

【下载地址:https://nodejs.org/en/download/   使用中,请注意各个项目支持的Nodejs的版本】  

说到这个真是万恶之源,各种版本不兼容,什么前后分离,卷死一代又一代的少年兄弟,关键下载个包还得整个国外的,谷歌重来就是作死不罢休的。只是国内尚未有哪怕一个腰杆子硬一点企业与之抗衡量,各种镜像源倒是整了个遍,论浪费我中华如果只称第二,没人敢说第一。废话不多说。

1. 安装,不建议直接安装nodejs

因为太多版本了,各种项目被支持的版本又是千奇百怪,推荐使用nvm安装。

NVM是nodejs的版本管理器,可以安装各种版本。

NVM的下载地址:https://github.com/coreybutler/nvm-windows/releases

一路下载安装之后,进行nodejs的安装。

C:\Users\freew>nvm -v
1.1.12

C:\Users\freew>nvm ls available

|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    21.5.0    |   20.10.0    |   0.12.18    |   0.11.16    |
|    21.4.0    |    20.9.0    |   0.12.17    |   0.11.15    |
|    21.3.0    |   18.19.0    |   0.12.16    |   0.11.14    |
|    21.2.0    |   18.18.2    |   0.12.15    |   0.11.13    |
|    21.1.0    |   18.18.1    |   0.12.14    |   0.11.12    |
|    21.0.0    |   18.18.0    |   0.12.13    |   0.11.11    |
|    20.8.1    |   18.17.1    |   0.12.12    |   0.11.10    |
|    20.8.0    |   18.17.0    |   0.12.11    |    0.11.9    |
|    20.7.0    |   18.16.1    |   0.12.10    |    0.11.8    |
|    20.6.1    |   18.16.0    |    0.12.9    |    0.11.7    |
|    20.6.0    |   18.15.0    |    0.12.8    |    0.11.6    |
|    20.5.1    |   18.14.2    |    0.12.7    |    0.11.5    |
|    20.5.0    |   18.14.1    |    0.12.6    |    0.11.4    |
|    20.4.0    |   18.14.0    |    0.12.5    |    0.11.3    |
|    20.3.1    |   18.13.0    |    0.12.4    |    0.11.2    |
|    20.3.0    |   18.12.1    |    0.12.3    |    0.11.1    |
|    20.2.0    |   18.12.0    |    0.12.2    |    0.11.0    |
|    20.1.0    |   16.20.2    |    0.12.1    |    0.9.12    |
|    20.0.0    |   16.20.1    |    0.12.0    |    0.9.11    |
|    19.9.0    |   16.20.0    |   0.10.48    |    0.9.10    |

This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases

 

2. 安装和配置npm

nvm list available  可以显示可以安装的nodejs版本

nvm listnvm ls  查看目前已经安装的版本 

nvm install  [版本号]   安装某个版本的nodejs

nvm uninstall [版本号]   删除某个版本的nodejs

nvm use [版本号]   使用哪个版本的nodejs,注意:不是直接切换就可以的,注意环境变量要手工改,这不是坑爹嘛,windows的坑没办法。

 

切换版本后,需要同步更改nodejs的环境变量的路径,其实可以尝试使用一下,把多个版本的nodejs都加入环境变量尝试一下,看会不会直接就生效了。

安装完成后可以分别输入命令行node -v和npm -v,检验node.js以及对应npm是否安装成功,注意在win11下使用的时候,发现这样安装后,并没有将nodejs的路径添加到环境变量,需要手工添加

配置安装nodejs的目录信息,找到nvm的安装目录下面的setting.txt

在win11下面测试

root: D:\program files\nvm
path: D:\Program Files\nodejs
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

发现path配置了,但是根本不起作用,win11真的是被阿三彻底搞成废物了,使用nvm install 的时候,发现,nodejs仍然是安装到了nvm的目录下去了,只能将就这样用了。

 

3. 配置npm镜像源

查看当前使用的镜像源

  npm config get registry

更改为taobao的镜像源

  npm config get registry https://registry.npm.taobao.org

设置npm的cache目录 和  全局缓存目录

    npm config set prefix  'D:\\program files\\nodejs\\node_global'

    npm config set cache  'D:\\program files\\nodejs\\node_cache'

 

查看当前npm的配置信息

PS D:\git\RuoYi-Vue-Plus\ruoyi-ui> npm config list
; "user" config from C:\Users\freew\.npmrc

cache = "D:\\program files\\nodejs\\node_cache"
prefix = "D:\\program files\\nodejs\\node_global"
registry = "https://registry.npm.taobao.org/"

; node bin location = D:\program files\nvm\v16.20.2\node.exe
; node version = v16.20.2
; npm local prefix = D:\git\RuoYi-Vue-Plus\ruoyi-ui
; npm version = 8.19.4
; cwd = D:\git\RuoYi-Vue-Plus\ruoyi-ui
; HOME = C:\Users\freew

 

二  maven 的安装和配置

1. 本地仓库配置和镜像加速

在conf/settings.xml 更改maven配置

 

使用 vscode Notepad++或者 文本的方式打开xml,进行编辑

1.找到其中的 localRepository 修改本地仓库位置,标签体中即是刚刚手动创建的仓库位置。

<localRepository>D:\maven-repository</localRepository>

2.使用阿里云镜像加速

找到mirrors标签,然后添加如下代码:

<!-- 阿里云加速 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

 

 3.查看生效的配置

 mvn help:effective-settings

Effective user-specific configuration settings:

<?xml version="1.0" encoding="GBK"?>
<!-- ====================================================================== -->
<!--                                                                        -->
<!-- Generated by Maven Help Plugin                                         -->
<!-- See: https://maven.apache.org/plugins/maven-help-plugin/               -->
<!--                                                                        -->
<!-- ====================================================================== -->
<!-- ====================================================================== -->
<!--                                                                        -->
<!-- Effective Settings for 'freew' on 'wynotebook'                         -->
<!--                                                                        -->
<!-- ====================================================================== -->
<settings xmlns="http://maven.apache.org/SETTINGS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">
  <localRepository>D:\mvn_repository</localRepository>
  <mirrors>
    <mirror>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <id>alimaven</id>
    </mirror>
    <mirror>
      <mirrorOf>aliyun</mirrorOf>
      <name>nexus-aliyun</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public</url>
      <id>nexus-aliyun</id>
    </mirror>
  </mirrors>
  <pluginGroups>
    <pluginGroup>org.apache.maven.plugins</pluginGroup>
    <pluginGroup>org.codehaus.mojo</pluginGroup>
  </pluginGroups>
</settings>

 

三   gradle 和  android plugin与android studio的依赖关系

  1.  在这里查看gradle插件和android studion兼容性

        【https://developer.android.google.cn/studio/releases/gradle-plugin?hl=zh-cn】

     2.  这里可以看到安卓的版本与其兼容的gradle plugin的版本号

   

  3. 手动更改 gradle的镜像源

  更改项目级的build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
//        google()
//        jcenter()
//        mavenCentral()
        maven {url 'https://maven.aliyun.com/repository/google'}
        maven {url 'https://maven.aliyun.com/repository/jcenter'}
        maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.6.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects{
    repositories{
        maven {url 'https://maven.aliyun.com/repository/google'}
        maven {url 'https://maven.aliyun.com/repository/jcenter'}
        maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}
    }
}

  

  4. 手工修改gradle.wrapper中gradle下载的地址

gradle-wrapper.properties

#Mon Jan 01 23:52:14 CST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-5.6.4-all.zip

 腾讯的镜像地址:https://mirrors.cloud.tencent.com/gradle/

  5. 配置gradle默认的仓库地址和本地仓库

 在这个目录下添加 init.gradle,添加以下内容

allprojects{
    repositories {
        def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/repository/public'
        def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/repository/jcenter'
        all { ArtifactRepository repo ->
            if (repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                if (url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
                    remove repo
                }
            }
        }
        maven {
            url ALIYUN_REPOSITORY_URL
            url ALIYUN_JCENTER_URL
        }
    }
}