Java环境准备帖-Mac

jenv(jdk多版本管理)

# 使用brew安装jenv
brew install jenv

# 配置jenv环境变量到bash_profile或者zshrc文件中
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"

oracle官网下载jdk,此处以1.8为例

jdk1.8下载
安装成功后,jdk被安装在了/Library/Java/JavaVirtualMachines路径下
此时,用jenv将jdk版本添加进去

jenv add /Library/Java/JavaVirtualMachines/jdk版本号.jdk/Contents/Home

验证jdk环境

java -version

maven环境安装

maven老版本下载

选择想要的版本进行下载,如果想要使用最新版,直接访问maven最新版

解压,修改conf文件夹下setting.xml的本地仓库路径,不适用默认的.m2本地库路径,是因为.m2是操作系统的路径,后期当maven依赖越来越多,会导致系统变得很卡。所以使用自己指定的路径

环境变量配置

# 配置maven环境变量到bash_profile或者zshrc文件中
# 你的maven解压后的路径。
export M2_HOME=/Users/xxx/xxx/maven-x.x.x
export PATH=$PATH:$M2_HOME/bin

配置成功后source 配置文件,检验maven环境是否安装成功

mvn -v

git 安装

brew install git

#设置用户名
git config --global user.name [username]

#查看用户名
git config --global user.name

#设置邮箱
git config --global user.email [email]

#查看邮箱
git config --global user.email

#查看git配置文件
git config --list

#编辑配置文件
vi .gitconfig  

android-sdk环境安装

android-studio下载
下载安装完成android-studio之后,打开新建任意项目,找到Preferences->Android SDK,选择要下载的sdk版本,进行下载

下载完成后,将sdk环境变量进行配置

#配置sdk环境变量到bash_profile或者zshrc文件中
ANDROID_HOME="下载的sdk路径/sdk"
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/tools/bin:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/build-tools/30.0.1:$PATH
export PATH=$ANDROID_HOME/emulator:$PATH
export ANDROID_HOME

node包管理工具

千万不要去node官网下载.dmg 的node进行安装
千万不要去node官网下载.dmg 的node进行安装
千万不要去node官网下载.dmg 的node进行安装(重要的事情说三遍)


#下载nvm包并执行相关脚本
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash


#配置nvm环境变量到bash_profile或者zshrc文件中
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

#使其配置生效
source bash_profile或者zshrc

#查看可以安装的node版本(官方所有能用版本)
nvm ls-remote

#安装指定版本的 node
nvm install v8.16.2

#切换node版本
nvm use v8.16.2

Appium-server环境安装

  • 默认已安装node、jdk、sdk等环境。如未安装,请往上查看并进行安装,此为必要条件
#使用国内淘宝源镜像安装appium-server,最新版本的node安装appium会存在资源找不到的错误。
npm install -g appium --registry=https://registry.npm.taobao.org

#安装appium-doctor检测appium环境是否安装成功
npm install -g appium-doctor
#执行检查,关注sdk、jdk环境是否正常即可
appium-doctor

# 启动appium-server
appium 

网易mumu模拟器

网易mumu

adb kill-server && adb server

adb devices

Junit5+Allure2的pom依赖(Allure官网的依赖有问题)

<properties>
        <aspectj.version>1.8.10</aspectj.version>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>

        <dependency>
            <groupId>io.qameta.allure</groupId>
            <artifactId>allure-junit5</artifactId>
            <version>2.7.0</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-params</artifactId>
            <version>5.4.2</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-launcher</artifactId>
            <version>1.4.2</version>
        </dependency>

        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-runner</artifactId>
            <version>1.5.1</version>
        </dependency>

        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-surefire-provider</artifactId>
            <version>1.2.0</version>
        </dependency>

        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>${aspectj.version}</version>
        </dependency>

        <dependency>
            <groupId>io.rest-assured</groupId>
            <artifactId>rest-assured</artifactId>
            <version>4.3.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <defaultGoal>compile</defaultGoal>
        <plugins>
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <!-- suite使用该版本号  <version>2.21.0</version>-->
                <version>2.22.0</version>
                <configuration>
                    <testFailureIgnore>false</testFailureIgnore>
                    <argLine>
                        -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                    </argLine>
                    <systemProperties>
                        <property>
                            <name>junit.jupiter.extensions.autodetection.enabled</name>
                            <value>true</value>
                        </property>
                        <property>
                            <name>allure.results.directory</name>
                            <value>${project.build.directory}/allure-results</value>
                        </property>
                    </systemProperties>
                </configuration>
            </plugin>
            <plugin>
                <groupId>io.qameta.allure</groupId>
                <artifactId>allure-maven</artifactId>
                <version>2.8</version>
                <configuration>
                    <reportVersion>2.4.1</reportVersion>
                </configuration>
            </plugin>
        </plugins>
    </build>

Selenium用到的pom依赖

参考文档

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.141.59</version>
</dependency>

Appium用到的pom依赖

参考文档

<dependency>
    <groupId>com.github.appium</groupId>
    <artifactId>java-client</artifactId>
    <version>7.3.0</version>
</dependency>

Rest-assured用到的pom依赖

参考文档

<dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>rest-assured</artifactId>
      <version>4.3.1</version>
      <scope>test</scope>
</dependency>
<dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>json-path</artifactId>
      <version>4.3.1</version>
      <scope>test</scope>
</dependency>
<dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>xml-path</artifactId>
      <version>4.3.1</version>
      <scope>test</scope>
</dependency>
<dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>json-schema-validator</artifactId>
      <version>4.3.1</version>
      <scope>test</scope>
</dependency>

jq安装

jq参考链接

brew install jq

mitmproxy安装

mitmproxy参考链接

#mac安装
brew install mitmproxy


#python安装mitmproxy方式
python3 -m pip install --user pipx
python3 -m pipx ensurepath
pipx install mitmproxy

由于网络原因,一直无法下载 :joy:

为什么不能去官网上下载昵?从官网上下载,有什么影响吗?

卸载起来很麻烦

网络问题想办法解决一下吧