全部产品
Search
文档中心

Function Compute:Bagaimana cara mereferensikan dependensi dalam sebuah lapisan di runtime kustom

更新时间:Jun 24, 2025

Runtime kustom mendukung beberapa bahasa dengan versi berbeda, seperti Python, Node.js, Java, dan PHP. Metode pengemasan lapisan untuk bahasa-bahasa ini serupa dengan runtime asli. Namun, dalam runtime kustom, Anda harus menambahkan direktori tempat dependensi lapisan disimpan ke jalur pencarian paket dependensi untuk runtime tersebut. Topik ini menjelaskan cara mereferensikan dependensi dalam runtime kustom untuk berbagai bahasa.

Contoh

Dalam topik ini, direktori tempat lapisan berada, seperti /opt/python, adalah direktori yang direkomendasikan. Secara default, lapisan diterapkan ke direktori-direktori ini jika Anda membuat paket ZIP lapisan berdasarkan langkah-langkah yang dijelaskan dalam Buat Lapisan Kustom. Jika tidak, konfirmasikan struktur direktori paket ZIP lapisan Anda terlebih dahulu dan ganti /opt/python dengan direktori aktual.

Sebagai contoh, jika direktori dalam paket ZIP lapisan Anda adalah my-layer-code, lapisan akan diterapkan ke direktori /opt/my-layer-code. Anda perlu menggunakan direktori /opt/my-layer-code saat mengatur variabel lingkungan dalam konfigurasi fungsi atau saat menambahkan jalur pencarian pustaka dependensi ke kode.

Mereferensikan dependensi lapisan dalam runtime kustom - Python

  • Metode 1: Atur variabel lingkungan PYTHONPATH dalam konfigurasi fungsi dan tambahkan direktori tempat lapisan berada.

    Kode contoh:

    PYTHONPATH=/opt/python
  • Metode 2: Tambahkan pernyataan berikut ke file entri proyek Anda. Pernyataan ini harus dieksekusi sebelum pustaka dependensi lapisan diimpor.

    import sys
    sys.path.append('/opt/python')
    # import {PackageFromLayer}

Untuk informasi lebih lanjut, lihat contoh python-demo-with-lib-in-layer.

Mereferensikan dependensi lapisan dalam runtime kustom - Node.js

Atur variabel lingkungan NODE_PATH dalam konfigurasi fungsi dan tambahkan direktori tempat lapisan berada. Untuk informasi lebih lanjut, lihat contoh nodejs-demo-with-lib-in-layer.

NODE_PATH=/opt/nodejs/node_modules

Mereferensikan dependensi lapisan dalam runtime kustom - Java

  • Metode 1: Konfigurasikan parameter -classpath dalam perintah startup dan tambahkan direktori /opt/java/lib/*, tempat lapisan berada.

    java -Dserver.port=9000 -classpath /code/:/opt/java/lib/* com.example.demo.DemoApplication
  • Metode 2: Atur variabel lingkungan CLASSPATH dalam konfigurasi fungsi dan tambahkan direktori tempat dependensi lapisan berada.

    CLASSPATH=/code/:/opt/java/lib/*
null

Jika Anda menggunakan variabel lingkungan CLASSPATH, Anda tidak dapat menjalankan program dengan menentukan paket JAR menggunakan parameter -jar. Sebagai contoh, dalam contoh java -classpath ${CLASSPATH} -jar yourJarExe.jar, parameter -jar digunakan. JVM Java menggunakan MANIFEST.MF dalam paket JAR. Semua jalur pencarian yang ditentukan oleh variabel lingkungan dan baris perintah diabaikan. CLASSPATH tidak berlaku.

Mereferensikan dependensi lapisan dalam runtime kustom - PHP

Tambahkan pernyataan berikut ke file entri proyek Anda. Pernyataan ini harus dieksekusi sebelum pustaka dependensi lapisan diimpor.

<?php
$path = '/opt/php';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);