Otrzymuj powiadomienia o nadchodzących wydaniach Intlayera

    Błąd podczas kompilacji w CI/CD

    Jeśli otrzymujesz taki błąd w Next.js:

    Error: An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error

    Oto kilka rozwiązań:

    1. Brakujące słowniki

    Upewnij się, że słowniki są budowane na etapie kompilacji.

    Często zdarza się, że kompilacja działa lokalnie, ale nie na CI/CD. Powodem jest to, że lokalnie katalog .intlayer jest obecny, natomiast na CI/CD go nie ma, ponieważ jest wykluczony z kompilacji.

    Możesz to naprawić, dodając skrypt prebuild w pliku package.json Twojego projektu.

    {  // ...  "scripts": {    "prebuild": "npx intlayer dictionaries build", // Zostanie uruchomiony przed kompilacją    "build": "next build",  },}
    Zauważ, że jeśli używasz funkcji withIntlayer lub równoważnego pluginu bundlera dla Twojego frameworka, skrypt prebuild zostanie uruchomiony przed kompilacją.

    2. Brakujące zmienne środowiskowe podczas kompilacji / uruchamiania

    W kontenerze lub na platformie z automatycznym wdrażaniem zaleca się wykluczenie pliku .env z procesu budowania.

    .gitignore or .dockerignore
    # Zmienne środowiskowe.env**/.env.env.***/.env.*

    Jeśli Twoje zmienne środowiskowe nie są dostępne w czasie budowania, zostanie zgłoszony błąd.

    import { Metadata } from "next";export const generateMetadata = async ({ params }): Promise<Metadata> => ({  metadataBase: new URL(process.env.NEXT_PUBLIC_URL), // Tworzy bazowy URL metadanych z zmiennej środowiskowej});

    Prawdopodobnie nie jest to związane z Intlayer. Sprawdź więc swoje zmienne środowiskowe w czasie budowania na platformie CI/CD.