[JAVA] Exécuter l'analyse statique Infer dans l'environnement Windows

facebook Outil d'analyse statique OSS "infer" http://fbinfer.com/ java analyse les endroits (potentiellement) gluants et les fuites de mémoire. Dans l'analyse de Nurupo, cela semble être beaucoup plus fort que de trouver des bogues, alors j'avais envie de l'ajouter, mais ce n'est pas compatible avec Windows. Il y avait un docker pour le moment, donc j'ai réussi à l'exécuter avec docker-toolbox.

supposition

Introduction de docker-toolbox

https://www.docker.com/products/docker-toolbox Obtenez d'ici

Obtenez Dockerfile

Créez un répertoire d'inférence directement sous C (n'importe où ailleurs est OK)

Démarrez Docker Quickstart Terminal.

Obtenez le Dockerfile et lancez le shell.

$ curl https://raw.githubusercontent.com/facebook/infer/master/docker/Dockerfile > /c/infer/Dockerfile
$ curl https://raw.githubusercontent.com/facebook/infer/master/docker/run.sh > /c/infer/run.sh

Le Dockerfile est-il bogué lorsque je frappe le shell tel quel? (À partir du 9 juin 2017) Puisqu'il échoue, je modifierai un peu le Dockerfile. Modifié comme ci-dessous

# Base image
FROM buildpack-deps:xenial-curl

MAINTAINER I2

# Debian config
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
            aspcud \
            autoconf \
            automake \
            gcc \
            g++ \
            git \
            groff-base \
            libc6-dev \
            libgmp-dev \
            libmpc-dev \
            libmpfr-dev \
            m4 \
            make \
            ncurses-dev \
            ocaml \
            opam \
            openjdk-8-jdk-headless \
            pkg-config \
            python2.7 \
            rsync \
            unzip \
            zlib1g-dev && \
    rm -rf /var/lib/apt/lists/*

# Download the latest Infer release
RUN git clone https://github.com/facebook/infer.git

RUN cd infer && ./build-infer.sh java

ENV PATH $PATH:/infer/infer/bin

Créer et démarrer docker-image

Frapper la coquille

$ cd /c/infer
$ ./run.sh

Attends longtemps. Ça bougera.

Vous pouvez le passer par exemple, mais si vous le clonez à partir de git, vous pouvez analyser les projets existants.

Que faire à partir de maintenant

Je veux écrire dans un autre article à quel point l'analyse de Nurupo est incroyable

Recommended Posts

Exécuter l'analyse statique Infer dans l'environnement Windows
Analyse de code statique par Checkstyle avec Java + Gradle
[Rails] Exécutez LINE Bot dans un environnement local à l'aide de ngrok
Les débutants utilisent ubuntu dans la fenêtre pour préparer l'environnement des rails
Construction de l'environnement Penronse [Windows]
Installez / exécutez un simulateur de robot autonome dans l'environnement wsl2 / docker!
Résoudre l'erreur CreateProcess = 206 lors de l'exécution de Java dans un environnement Windows
Utiliser Java Web Start dans un environnement OpenJDK sous Windows
Compression Zip qui ne brouille pas dans l'environnement Java