Messaggio di errore UserErrorJreNotFound quando si esegue un'attività di copia in Azure

Questo articolo fornisce una soluzione per il problema che si verifica quando si tenta di copiare contenuto in Microsoft Azure usando uno strumento o un programma basato su Java.

Versione originale del prodotto: Data Factory
Numero KB originale: 4497239

Sintomi

Quando si tenta di copiare contenuto in Microsoft Azure usando uno strumento o un programma basato su Java ,ad esempio copiando file di formato ORC o Parquet, viene visualizzato un messaggio di errore simile al seguente:

ErrorCode=UserErrorJreNotFound,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Java Runtime Environment non trovato. Passare a http://go.microsoft.com/fwlink/?LinkId=808605 per scaricare e installare nel computer del nodo Integration Runtime (self-hosted). Nota: Integration Runtime a 64 bit richiedono JRE a 64 bit e Integration Runtime a 32 bit richiedono JRE a 32 bit,Source=Microsoft.DataTransfer.Common,''Type=System.DllNotFoundException,Message=Impossibile caricare la DLL 'jvm.dll': impossibile trovare il modulo specificato. (Eccezione da HRESULT: 0x8007007E),Source=Microsoft.DataTransfer.Richfile.HiveOrcBridge

Causa

Questo problema si verifica per uno dei motivi seguenti:

  • Java Runtime Environment (JRE) non è installato correttamente nel server Integration Runtime.

  • Il server Integration Runtime non dispone della dipendenza necessaria per JRE.

Per impostazione predefinita, Integration Runtime risolve il percorso JRE usando le voci del Registro di sistema. Tali voci devono essere impostate automaticamente durante l'installazione di JRE.

Risoluzione

Seguire attentamente i passaggi in questa sezione. L'errata modifica del Registro di sistema può causare seri problemi. Prima di apportare le modifiche, eseguire il backup del Registro di sistema per il ripristino nel caso si verifichino dei problemi.

Per risolvere questo problema, seguire questa procedura per verificare lo stato dell'installazione di JRE:

  1. Assicurarsi che Integration Runtime (Diahost.exe) e JRE siano installati nella stessa piattaforma. Verificare le condizioni seguenti:

    • Nella cartella deve essere installato JRE a 64 bit per Integration Runtime ADF a 64 bit:C:\Program Files\Java\

      Nota

      La cartella non è C:\Program Files (x86)\Java\

    • JRE 7 e JRE 8 sono entrambi compatibili per questa attività di copia. JRE 6 e le versioni precedenti a JRE 6 non sono state convalidate per questo uso.

  2. Controllare nel Registro di sistema le impostazioni appropriate. A tal fine, attenersi alla seguente procedura:

    1. Nel menu Esegui digitare Regedit e quindi premere INVIO.

    2. Nel riquadro di spostamento individuare la sottochiave seguente: HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment.

      Nel riquadro Dettagli deve essere presente una voce Versione corrente che mostra la versione JRE, ad esempio 1.8.

      Screenshot della versione di Java Runtime Environment nel Registro di sistema.

    3. Nel riquadro di spostamento individuare una sottochiave che corrisponde esattamente alla versione (ad esempio 1.8) nella cartella JRE. Nel riquadro dei dettagli deve essere presente una voce JavaHome . Il valore di questa voce è il percorso di installazione JRE.

      Screenshot della voce JavaHome nel riquadro dei dettagli.

  3. Individuare la cartella bin\server nel percorso seguente:

    C:\Program Files\Java\jre1.8.0_74

    Screenshot che mostra il percorso della cartella bin.

  4. Controllare se questa cartella contiene un file jvm.dll. In caso contrario, verificare la presenza del file nella bin\client cartella .

    Screenshot per controllare il file jvm.dll nella cartella bin.  

Nota

  • Se una di queste configurazioni non è come descritto in questi passaggi, usare il programma di installazione di Windows JRE per risolvere i problemi.
  • Se tutte le configurazioni in questi passaggi sono corrette come descritto, potrebbe essere presente una libreria di runtime VC++ mancante nel sistema. È possibile risolvere questo problema installando il pacchetto ridistribuibile di VC++ 2010.

Contattaci per ricevere assistenza

In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.