QQ grupo de intercambio
comunidad de intercambio thingsboard
Si usted tiene otras preguntas, puede ver varios temas prioritarios más adelante en este artículo compilado solución, si no lo suficiente como para intercambiar el grupo puede ayudar a: 121 202 538
Instalación para el Medio Ambiente
Entorno de desarrollo:
Jdk 1.8 Versión
PostgreSQL 9 anterior
Node.js
NPM
Maven más de 3,6
Git Herramientas
Herramientas de desarrollo Idea
Redis
JDK
Descargar e instalar
Descargar JDK oficial: https://www.oracle.com/java/technologies/javase-jdk8-downloads.html
versión JDK seleccionado JDK8, mi entorno local es Windos10 64 bits, por lo que elegir JDK-8u221-windows-x64.exe
Después de una buena descarga por defecto instalada directamente en la línea de
variable de entorno de configuración
Paso 1:
aumento de la dirección de la instalación de JDK JAVA_HOME en: C: \ Archivos de programa \ Java \ jdk1.8.0_221
Paso 2:
el aumento de la dirección de la instalación del archivo en el JDK CLASSPATH:;% JAVA_HOME% \ lib. ;% JAVA_HOME% \ lib \ dt.jar;% JAVA_HOME% \ lib \ tools.jar
Paso 3:
aumento de la JDK dirección Path:% JAVA_HOME% \ bin;% JAVA_HOME% \ jre \ bin;
Paso 4
Introduzca el siguiente comando
java -version
Si que aparezca el siguiente mensaje, incluso si la instalación se ha realizado correctamente
IDEA instalación
Referencia: tutorial de instalación de IDEA
Instalación de Maven
Paso 1: Descargar experto, introduzca la dirección: http: //maven.apache.org/download.cgi
Paso 2: Descargar a un local de
Paso 3: Configurar las variables ambientales
aumentan MAVEN_HOME, dirección maven a saber: D: \ tb \ apache maven-3.6.1-bin, Tenga en cuenta que si la descompresión directa, puede haber dos apache-maven-3.6.1- papelera
MAVEN_OPTS, el parámetro es -Xms128m -Xmx1024m
Ruta Modificar, un aumento de la dirección de Maven% MAVEN_HOME% \ bin;
Prueba de Maven instalado, una herramienta de línea de comandos abierta. Utilice el comando mvn -v, si el siguiente mensaje de que la instalación se ha realizado correctamente
instalación nodejs
Paso 1: Descargar el paquete de instalación nodejs, nodejs dirección del sitio web oficial: https: //nodejs.org/en/download/
Paso 2: Después de la instalación se haya completado, utilice el comando para ver si la instalación se ha completado nodejs, los siguientes consejos pueden tener un éxito de instrucciones de instalación
instalar Git
Paso 1: descargar el paquete de instalación de git, git dirección de sitio web oficial: https: //git-scm.com/download/win
Paso 2: Después de la instalación se haya completado, utilizando la prueba de línea de comandos git
NPM instalar la dependencia mundial
Paso 1: Utilice la línea de comandos CMD administrador, ejecute el siguiente comando
#npm 环境读取环境变量包
npm install -g cross-env
#webpack打包工具
npm install -g webpack
instalar Redis
Instalación Redis Referencia: https: //www.iotschool.com/wiki/redis
Con esto concluye el entorno de instalación, seguido tirando código de Git.
La clonación thingsboard Código
Determinar la ubicación de almacenamiento de códigos
Crear una ubicación de almacenamiento de archivos de código en el directorio local, y luego en el directorio actual, haga clic derecho y elegir Git Bash Aquí
fuente de entrada de comandos git clone
git clone https://github.com/thingsboard/thingsboard.git
Después de esperar pacientemente durante algún tiempo, ver la siguiente interfaz, incluso si la descarga se ha realizado correctamente
Cambio de git branch
El código de descarga por defecto es maestro de la rama principal, tenemos que cambiar a la versión más reciente de la rama de desarrollo.
Ver código fuente del proyecto de todas las ramas, descargar el código fuente, es necesario entrar en la carpeta thingsboard
Encontrar la última versión publicada 2.4, 2.4 así que elegir aquí, por supuesto, se puede elegir de acuerdo a su propia rama
Introduzca el siguiente comando para cambiar a la rama 2.4
git checkout release-2.4
Véase la siguiente manera, es decir, a la entrega exitosa
preparativos
conexión de red externa
Debido a que la tuberculosis durante la compilación necesidad de confiar en una gran cantidad de combinados al extranjero, tendrá que conectarse a la red externa, la conexión de soporte de la red externa, se puede ir a la comunidad en busca de ayuda: https: //www.iotschool.com/topics/node8
Maven se establece en Taobao Espejo
proyecto basado en Maven es gestionado directamente por la idea abierta, a continuación, se descargará automáticamente todo tipo de dependencias. dirección de las dependencias de almacenamiento por defecto es: C: \ Users \ nombre de usuario .m2 \ repositorio, que dice lo siguiente:
$tree ~/.m2 -L 2
/home/jay/.m2
└── repository
├── antlr
├── aopalliance
├── asm
├── backport-util-concurrent
├── ch
...
En general, el uso de las dependencias oficiales actualización de la imagen, inestabilidad de la velocidad, Maven puede ser fuente de espejo se establece en Taobao para encontrar conjunto settings.xml experto en el directorio del paquete de instalación
tiros de la localización aproximadas:
Settings.xml dentro del contenido se establece en la siguiente:
<mirrors>
<mirror>
<!--This sends everything else to /public -->
<id>aliyun_nexus</id>
<mirrorOf>*,!maven_nexus_201</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
No se establece, se puede hacer referencia a este documento: https: //cdn.iotschool.com/iotschool/settings.xml
QQ grupo thingsboard también tiene los recursos: 121 202 538
Conjunto NPM Espejo Taobao
Ibid., La velocidad no es buena NPM proceso de descarga se producirá un error, que es la principal causa del fracaso de muchos estudiantes para compilar thingsboard, por lo que hemos compilado antes de realizar, será reemplazado NPM Taobao Espejo:
npm install -g mirror-config-china --registry=http://registry.npm.taobao.org #使用淘宝镜像
npm config get registry #查询当前镜像
npm config rm registry #删除自定义镜像,使用官方镜像
npm info express
IDEA administrador configurado para iniciarse
Mi entorno de desarrollo local para compilar el proyecto se compila utilizando la herramienta de IDEA, es necesario configurar el administrador para iniciar, de manera que pueda ejecutar comandos para compilar todos los permisos.
Paso 1: Haga clic en el icono de IDEA, seleccione Propiedades.
Paso 2: Haga clic en Compatibilidad - cambiar todos los ajustes de usuario - Ejecutar este programa como administrador
comenzar a compilar
Compilar el proyecto con la velocidad de la red, la mejor conexión a redes externas se compila, por lo general de 5 a 30 minutos son posibles, más de 30 minutos para hacer su red.
Limpieza de archivos de proyecto para compilar
Uso IDEA herramienta de Maven para la limpieza
Introduzca el comando para iniciar el compilador para compilar
En la consola de IDEA (parte inferior izquierda) Terminal Introduzca el siguiente comando para compilar:
mvn clean install -DskipTests
Etc. Después de algún tiempo, ver cuadro abajo incluso compilado con éxito, si no compilado correctamente seguir la investigación de acuerdo con la AYUDA final de este tutorial, por lo general un problema de red. Si hay problemas, por favor vaya a la comunidad thingsboard el tema en cuestión.
Preguntas más frecuentes
Este tutorial sólo lista IoTSchool problemas encontrados en el proceso de compilación de la serie thingsboard pequeña, si usted tiene preguntas adicionales, por favor vaya a la comunidad thingsboard el tema en cuestión, habrá expertos para responder a sus preguntas.
Caché de compilación falla
Cada compilador tiempo para compilar fallo secundario para borrar la caché, y matar el proceso legado
Paso 1: Ejecutar el siguiente comando para matar el proceso legado
taskkill /f /im java.exe
Paso 2: Utilice la herramienta IDEA Maven para la limpieza
Consejos: Antes de la segunda a ser compilado, lo mejor es reiniciar un ordenador!
Servidor de interfaz de usuario no Compilación
[ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.0:npm (npm install) on project ui: Failed to run task: 'npm install' failed. (error code 1) -> [Help 1]
Si se produce este problema, se puede analizar desde las siguientes razones:
La razón de 1: nodo, versión NPM número del problema
Local nodo instalado ambiente, número de versión NPM y la configuración de los números de versión de archivo pom.xml código fuente no coinciden.
Solución:
Paso 1: Uso nodo -v, NPM -v vista nodo y la versión NPM número instalado
Paso 2: Modificar la versión del código fuente del archivo pom.xml
<configuration>
<nodeVersion>v12.13.1</nodeVersion>
<npmVersion>6.12.1</npmVersion>
</configuration>
Es necesario modificar el archivo tiene tres, la situación es la siguiente:
Razón 2: node-Sass descarga falló
Al compilar servidor de interfaz de usuario, descargas Nodo-Sass-dependiente, ya que si la propia red no se descarga correctamente, se producirá un error de compilación. Si está enseñando paso a paso de acuerdo con los libros, que no debería ser un problema, las preparaciones anteriores, la fuente de espejo NPM se cambia a Taobao, se descargará rápidamente.
[INFO] Downloading binary from https://github.com/sass/node-sass/releases/download/v4.12.0/win32-x64-72_binding.node
[ERROR] Cannot download "https://github.com/sass/node-sass/releases/download/v4.12.0/win32-x64-72_binding.node":
[ERROR]
[ERROR] ESOCKETTIMEDOUT
[ERROR]
[ERROR] Hint: If github.com is not accessible in your location
[ERROR] try setting a proxy via HTTP_PROXY, e.g.
[ERROR]
[ERROR] export HTTP_PROXY=http://example.com:1234
[ERROR]
[ERROR] or configure npm proxy via
[ERROR]
[ERROR] npm config set proxy http://example.com:8080
[INFO]
[INFO] > [email protected] postinstall F:\workspace\thingsboard\thingsboard\ui\node_modules\node-sass
[INFO] > node scripts/build.js
[INFO]
Solución: Conmutación de reflejo de Taobao
Solución: reinicie el ordenador, borrar la memoria caché
Razón 3: La versión 3.0 Thingsboard problema del compilador encontrado
Pro-test: la versión 2.4 también se puede resolver por esta vía
Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.7.5:npm (npm install) on project ui-ngx: Failed to run task: 'npm install' failed. org.apache.commons.exec.ExecuteException: Process exited with an error: -4048 (Exit value: -4048) -> [Help 1]
Solución: https: //www.iotschool.com/topics/84
Motivo 4: plomo compilar a residuos de proceso secundarias
error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project ui: Failed to clean project: Failed to delete F:\workspace\thingsboard\thingsboard\ui\target\node\node.exe -> [Help 1]
Servidor de la herramienta Compilación falló
[ERROR] Failed to execute goal on project tools: Could not resolve dependencies for project org.thingsboard:tools:jar:2.4.3: Failed to collect dependencies at org.eclipse.paho:org.eclipse.paho.client.mqttv3:jar:1.1.0: Failed to read artifact descriptor for org.eclipse.paho:org.eclipse.paho.clien
t.mqttv3:jar:1.1.0: Could not transfer artifact org.eclipse.paho:org.eclipse.paho.client.mqttv3:pom:1.1.0 from/to aliyun_nexus (http://maven.aliyun.com/nexus/content/groups/public/): Failed to transfer file http://maven.aliyun.com/nexus/content/groups/public/org/eclipse/paho/org.eclipse.paho.cli
ent.mqttv3/1.1.0/org.eclipse.paho.client.mqttv3-1.1.0.pom with status code 502 -> [Help 1]
En general, debido a razones de red, IoTSchool pequeña serie compilada por lo menos tres veces antes de tener éxito, cada compilación es necesario reiniciar el ordenador y limpiar el medio ambiente.
Solución: Si está utilizando mvn instalación limpia -DskipTests comando para compilar, a continuación, intentar varias veces antes de cada compilación, para limpiar el medio ambiente.
Referencia: https: //github.com/thingsboard/performance-tests/issues/10
JavaScript Ejecutor falla al compilar
JavaScript Ejecutor Microservice fallan para compilar
[ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.0:npm (npm install) on project js-executor: Failed to run task: 'npm install' failed. (error code 2) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :js-executor
La razón: la falta de memoria caché local fue a buscar-v10.15.3-linux-x64 y descabellada-v10.15.3-ganar-x64 estos dos archivos.
Solución:
Paso 1: Descarga ambos archivos a un local, después de una descarga recordar para cambiar el nombre, dirección de descarga: https: //github.com/zeit/pkg-fetch/releases
Paso 2: Descarga el archivo en dos: poner: C: \ Users \ nombre de usuario \ .pkg-cache \ v2.6. Y los nombres fueron cambiados a: descabellada-v10.15.3-linux-x64 y descabellada-v10.15.3-ganar-x64
Referencia: https: //github.com/thingsboard/thingsboard/issues/2084
Verificación de la licencia no pasa
[ERROR] Failed to execute goal com.mycila:license-maven-plugin:3.0:check (default) on project thingsboard: Some files do not have the expected license header -> [Help 1]
Solución: blindaje de licencia de Maven-plugin en el directorio raíz de la pom.xml
licencia-maven-plugin de búsqueda, comente todo el plug-in
Interfaz de usuario web falla al compilar
Interfaz de usuario web falla al compilar Consulte Servidor de interfaz de usuario deja de compilar la primera razón
Maven: No se pudo resolver las dependencias para org.thingsboard proyecto: Aplicación:
Mensajes de error
[ERROR] Failed to execute goal on project application: Could not resolve dependencies for project org.thingsboard:application:jar:2.4.1: The following artifacts could not be resolved: org.thingsboard.rule-engine:rule-engine-components:jar:2.4.1, org.thingsboard:dao:jar:2.4.1: Could not find artifact org.thingsboard.rule-engine:rule-engine-components:jar:2.4.1 in jenkins (http://repo.jenkins-ci.org/releases) -> [Help 1]
directorio raíz abajo compilador experto, no en cada compilan por separado, o no puede resolver automáticamente las dependencias, si ya está compilado en el sub-módulo, volver al directorio raíz del primer aspecto limpio, y luego volver a compilar: solución.
maven: No se pudo eliminar la TB-http-transport.rpm
Mensaje de error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project http: Failed to clean project: Failed to delete D:\my_project\thingsboard\transport\http\target\tb-http-transport.rpm -> [Help 1]
Solución: En primer lugar compilación falla, se le pedirá de nuevo para compilar este error, puede eliminar manualmente la ruta al error, si los archivos impulsadas están en uso, es necesario eliminar manualmente el administrador de tareas para matar el proceso java antes.
NGP: NGP: cb () nunca llamó!
Mensaje de error:
npm ERR! cb() never called!
npm ERR! This is an error with npm itself. Please report this error at:
npm ERR! <https://npm.community>
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\yuren\AppData\Roaming\npm-cache\_logs\2019-11-06T10_55_28_258Z-debug.log
Solución:
prueba después de NPM NPM caché --force instalación limpia de nuevo en vano;
reemplazo intento NPM Taobao reflejo instalar en vano otra vez;
sospechar algunos paquetes necesarios para descargar a través de la pared, sobre la pared después todavía existe el problema de agencia global;
de referencia en línea cierre todas las después todavía existe el problema de agencia;
y, finalmente, un lugar para error de desempaquetado, los materiales de diseño de iconos de blindaje requeridas, los nuevos módulos todavía rxjs siendo determinado por el análisis log log;
extract [email protected] extracted to node_modules\.staging\material-design-icons-61b4d55e (72881ms)
extract [email protected] extracted to node_modules\.staging\rxjs-e901ba4c (24280ms)
cb NPM referencia ERR () nunca llamó Ejecutivo
npm install --no-package-lock
Después de sugerir ERR NPM! Git Path, git después de añadir una variable de entorno a la normalidad.
NGP: NGP ERR! Path Git
Mensajes de error
npm ERR! path git
npm ERR! code ENOENT
npm ERR! errno ENOENT
npm ERR! syscall spawn git
npm ERR! enoent Error while executing:
npm ERR! enoent undefined ls-remote -h -t git://github.com/fabiobiondi/angular-
Solución: Añadir la variable de entorno a Git.
Sin compilador se proporciona en este entorno
Mensaje de error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.
1:compile (default-compile) on project netty-mqtt: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on
a JRE rather than a JDK?
Es necesario que se fijará en un java variable de entorno, que contiene bin% JAVA_HOME%;% JAVA_HOME% lib;
Para obtener más opciones, ir a las comunidades a la dirección: https: //www.iotschool.com/topics/node8