Configuração da aplicação personalizada no código-fonte

  • Versão de lançamento: Australia
  • Atualizado 20 de mar. de 2026
  • 5 min. de leitura
  • Configure uma aplicação personalizada [sys_app] no now.config.json arquivo de uma aplicação no código-fonte.

    Você pode definir as configurações da aplicação e aspectos específicos para desenvolver a aplicação no código-fonte, como a estrutura de diretórios. Em now.config.json arquivo, adicione os seguintes parâmetros para definir as configurações da aplicação.

    Tabela 1. Parâmetros now.config.json compatíveis
    Parâmetro Tipo Descrição
    AppOutputDir Cadeia de caracteres Diretório para gerar os artefatos de compilação para o empacotamento. Os comandos de pacote e instalação se referem a este diretório para empacotar os artefatos.

    Padrão: dist/app

    ClienteDir Cadeia de caracteres Diretório que contém os arquivos do lado do cliente para desenvolver interfaces do usuário com o React.

    Padrão: src/cliente

    dependências Objeto Os itens em outro escopo da aplicação do qual sua aplicação depende. Você deve especificar o escopo da aplicação e o tipo de dependência e os nomes ou sys_ids.
    "dependencies": {
        "<scope>": {
          "<type>": ["<sys_id or name>"],
          ...
        },
        ...
    }

    Para obter mais informações, consulte Download ServiceNow Fluent dependências da aplicação.

    FluentDir Cadeia de caracteres Diretório que contém ServiceNow Fluent arquivos ( .now.ts ) que definem metadados da aplicação no código-fonte.

    Padrão: src/fluente

    GeradoDir Cadeia de caracteres Diretório que contém gerado ServiceNow Fluent arquivos, incluindo metadados da aplicação existentes convertidos em ServiceNow Fluent código. Este diretório é relativo ao diretório definido com fluentDirparâmetro.

    Padrão: gerado

    IgnoreTransformTableList Matriz Uma lista de tabelas a serem ignoradas ao transformar metadados da aplicação em código-fonte.
    MetadataDir Cadeia de caracteres Diretório que contém os metadados da aplicação como arquivos XML.

    Padrão: metadados

    ModulePaths Objeto Um mapa dos arquivos de origem do módulo para seus arquivos de saída equivalentes para se você usar uma etapa de transpilação personalizada antes de criar a aplicação. Para obter mais informações, consulte Usando typescript em módulos JavaScript com ServiceNow SDK.
    Aviso:
    Você não pode usar este parâmetro e o. TsconfigPath parâmetro. A configuração de ambos resulta em um erro.
    Dir Cadeia de caracteres Diretório para gerar o pacote instalável ( .zip arquivo) ao criar a aplicação. O comando install se refere a este diretório para instalar o pacote.

    Padrão: destino

    ServerModulesDir Cadeia de caracteres Diretório que contém os arquivos javascript ou typescript a serem incorporados nos módulos JavaScript para uso em scripts do lado do servidor.

    Padrão: src/servidor

    ServerModulesExcludePatterns Matriz Uma lista de padrões de arquivo a serem excluídos ao criar módulos JavaScript.
    Padrão:
    [
      "**/*.test.ts",
      "**/*.test.js",
      "**/*.d.ts"
    ]
    ServerModulesIncludePatterns Matriz Uma lista de padrões de arquivo a serem incluídos ao criar módulos JavaScript.
    Padrão:
    [
      "**/*.ts",
      "**/*.tsx",  
      "**/*.js",
      "**/*.jsx",
      "**/*.cts",
      "**/*.cjs",
      "**/*.mts",
      "**/*.mjs",
      "**/*.json"
    ]
    StaticContentDir Cadeia de caracteres Diretório para gerar os arquivos de ativos estáticos usados para desenvolver interfaces do usuário.

    Padrão: dist/estático

    StaticContentPaths Objeto Um mapa dos arquivos de origem do lado do cliente para os caminhos de saída dos arquivos de ativos estáticos.
    Idioma padrão Cadeia de caracteres O código BCP 47 de um idioma padrão para rótulos de campo [sys_documentation] em uma tabela ou coluna. O idioma padrão é usado para resolver rótulos de campo com vários idiomas.

    Padrão: en

    TableOutputFormat Cadeia de caracteres O tipo de artefatos de compilação para XML de metadados da tabela gerados ServiceNow Fluent código.
    Valores válidos:
    • Inicialização: O processo de compilação gera um arquivo XML de inicialização com o. <database> Elemento raiz da tabela, arquivos XML de rótulo de campo [sys_documentation], arquivos XML de configuração de licenciamento [ua_table_licensing_config] e arquivos XML de numeração automática [sys_number].
    • Componente: O processo de compilação gera arquivos XML para cada componente da API de tabela.

    Padrão: inicialização

    taxonomia Objeto Uma configuração para organização gerada ServiceNow Fluent arquivos, que mapeia nomes de tabela para diretórios e define um diretório de fallback. A configuração de taxonomia padrão usa ServiceNow classificações de tabela padrão a serem adicionadas geradas ServiceNow Fluent arquivos em uma estrutura de diretório lógico no fluente/gerado diretório quando os metadados são inicialmente transformados em ServiceNow Fluent código. Por exemplo:
    • As regras de negócio [sys_script] foram adicionadas ao fluent/generated/server-development/business-rule diretório.
    • As inclusões de script [sys_script_include] foram adicionadas ao fluent/generated/server-development/script-include diretório.

    Você pode substituir os mapeamentos padrão ou configurar mapeamentos adicionais. No exemplo a seguir, a configuração substitui o diretório padrão para regras de negócios [sys_script] e a pasta de fallback e configura um mapeamento adicional para metadados de uma tabela personalizada.

    "taxonomy": {
            "mapping": {
                "sys_script": "scripts/server/rules",
                "custom_table": "my-custom-folder/my-nested-folder"
            },
            "fallbackFolderName": "unclassified"
    }
    • Mapeamento: Um objeto que mapeia nomes de tabela para diretórios. Os caminhos do diretório são relativos ao diretório configurado com o. generatedDiro parâmetro e deve incluir somente letras minúsculas, números, hifens, sublinhados e barras para separar subdiretórios.
    • FallbackFolderName: Um nome para um diretório usar para tabelas que não têm um mapeamento padrão ou personalizado configurado. Neste diretório, ServiceNow Fluent os arquivos são adicionados a subdiretórios nomeados após a tabela, como src/fluent/generated/other/x-unmapped-table/ .

    Padrão: Os mapeamentos de taxonomia padrão são definidos para todos os padrões ServiceNow as tabelas e são aplicadas automaticamente quando nenhuma configuração personalizada é definida no now.config.json para uma aplicação. O valor padrão de fallbackFolderNameé outro .

    TrustedModules Matriz Uma lista de pacotes npm a serem identificados como confiáveis (ou internos). Os módulos confiáveis têm acesso a. ServiceNow APIs. Por exemplo:
    "trustedModules": [
      "<package-name>",  // Specific package
      "@servicenow/*"  // All packages from an organization
    ]

    Na tabela Módulo ECMAScript [sys_module], o. Fonte externa o campo está definido como falso para módulos confiáveis.

    Aviso:
    Apenas adicione dependências em que você confia completamente como módulos confiáveis.
    Padrões válidos:
    • Nomes de pacotes totalmente qualificados, como "em servicenow/sdk" .
    • Prefixos da organização com um curinga, como " em servicenow/*" ou " em mycompany/*" .
    TsconfigPath Cadeia de caracteres Um caminho para um tsconfig.json Arquivo com opções personalizadas para transcodificar o typescript para JavaScript durante o processo de compilação. Especificando um TsconfigPath Gera resultados de diagnóstico do typescript usando o. tsconfig.json arquivo.
    Aviso:
    Você não pode usar este parâmetro e o. ModulePaths parâmetro. A configuração de ambos resulta em um erro.

    Padrão: .

    Configuração da aplicação no código-fonte

    {
      "scope": "x_snc_example_app",
      "scopeId": "2f8400eb07426110f736e28f69d3017a",
      "name": "ExampleApp",
      "dependencies": {
        "global": {
          "tables": ["incident"],
          "roles": ["admin"],
        },
        "x_custom": {
          "tables": ["custom_table"]
        }
      },
      "metadataDir": "metadata",
      "fluentDir": "src/fluent",
      "generatedDir": "generated",
      "serverModulesDir": "src/server",
      "clientDir": "src/client",
      "appOutputDir": "dist/app",
      "staticContentDir": "dist/static",
      "packOutputDir": "target",
      "modulePaths": {
          "src/server/*.ts": "dist/server/*.js",
        },
      "staticContentPaths": {
          "src/client/*.html": "dist/static/*.html",
        },
      "ignoreTransformTableList": ["ua_table_licensing_config", "sys_embedded_help_role"],
      "taxonomy": {
            "mapping": {
                "sys_script": "scripts/server/rules",
                "custom_table": "my-custom-folder/my-nested-folder"
            },
            "fallbackFolderName": "unclassified" 
        }
    }