Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver appCAT CLI-kommandoanvändningen.
Kommandon
| Namn | Beskrivning |
|---|---|
| appcat analysera | Med den här underkommandot kan du köra källkodsanalys på indatakällans kod eller på en binär fil. |
| appcat-transform | Den här underkommandot gör det möjligt att konvertera XML-regler till YAML. |
| appcat-version | Den här underkommandot skriver ut verktygsversionen. |
AppCat analysera
Följande avsnitt innehåller en detaljerad beskrivning av de tillgängliga appcat analyze kommandoradsparametrarna.
Obligatoriska parametrar
| Parameter | Beskrivning |
|---|---|
--input |
Sökvägen till programmets källkod eller en binär fil för analys. Använd en kommaavgränsad lista för flera värden: --input <input1>,<input2>,.... Standardvärdet är []. |
--output |
Katalogen där analysresultaten lagras. |
Valfria parametrar
| Kategori | Parameter | Beskrivning |
|---|---|---|
| Käll- och målteknologier | ||
--list-sources |
Visar tillgängliga tekniker för migreringskällan. | |
--list-targets |
Visar tillgängliga målteknologier för migrering. | |
--list-capabilities |
Visar tillgängliga migreringsfunktioner | |
--list-os |
Visar tillgängliga operativsystem för migreringsmål. | |
--source, -s |
Anger källteknikerna för analys. Använd en kommaavgränsad lista för flera värden , till exempel --source <source1>,<source2>,....
--list-sources Använd argumentet för att lista alla tillgängliga källor. |
|
--target, -t |
Anger målteknikerna för analys. Använd en kommaavgränsad lista för flera värden , till exempel --target <target1>,<target2>,....
--list-targets Använd argumentet för att lista alla tillgängliga mål. |
|
--capability, -c |
Anger kapacitetstekniker för analys. Använd en kommaavgränsad lista för flera värden , till exempel --capability <capability1>,<capability2>,....
--list-capabilities Använd argumentet för att lista alla tillgängliga funktioner. |
|
--os |
Anger operativsystem för analys. Använd en kommaavgränsad lista för flera värden , till exempel --os <os1>,<os2>,....
--list-os Använd argumentet för att visa en lista över alla tillgängliga operativsystem. |
|
| Analysalternativ | ||
--analyze-known-libraries |
Möjliggör analys av kända bibliotek med öppen källkod – som anges i AppCAT:s – under källkodsanalysen maven.default.index . Standardvärdet är false. |
|
--custom-maven-settings |
Anger sökvägen till en anpassad Maven-inställningsfil. | |
--dry-run |
Kontrollerar om flaggorna är giltiga utan att faktiskt köra analysen. Standardvärdet är false. |
|
--mode, -m |
Anger analysläget. Måste vara ett av full - källa + beroenden, för att analysera källkoden och lista beroenden - eller source-only. Standardvärdet är full. |
|
--packages |
Anger de programklasspaket som ska utvärderas. Använd en kommaavgränsad lista för flera värden , till exempel --packages <package1>,<package2>,.... Standardvärdet är []. |
|
| Regelalternativ | ||
--code-snips-number |
Begränsar det visade antalet incidenter med kodfragment i en fil.
0 innebär ingen gräns, så alla incidenter med kodfragment i en fil visas.
-1 innebär att inga kodfragment visas. Standardvärdet är 0. |
|
--enable-default-rulesets |
Möjliggör körning av standardregleruppsättningar. Standardvärdet är true. Använd --enable-default-rulesets=false för att inaktivera. |
|
--label-selector, -l |
Tillämpar regler baserat på ett angivet etikettväljareuttryck – till exempel (konveyor.io/target=azure-aks && konveyor.io/source). |
|
--rules |
Anger regelfiler eller kataloger. Använd en kommaavgränsad lista för flera värden , till exempel --rules <rule1>,<rule2>,.... Standardvärdet är []. |
|
| Proxyinställningar | ||
--http-proxy |
Definierar en HTTP-proxy-URL för nedladdning av bibliotek med öppen källkod (OSS) från Maven-repositoriet. | |
--https-proxy |
Definierar en HTTPS-proxy-URL för nedladdning av OSS-bibliotek från Maven-lagringsplatsen. | |
--no-proxy |
Anger URL:er som ska undantas från proxyanvändning vid nedladdning av OSS-bibliotek från Maven-lagringsplatsen. | |
| Rapport- och utdataformatering | ||
--bulk |
Kombinerar resultat när man kör flera analyze kommandon samtidigt. Standardvärdet är false. |
|
--context-lines-number |
Anger antalet källkodsrader som ingår i utdata för varje identifierad incident. Standardvärdet är 100. |
|
--incident-selector |
Filtrerar incidenter baserat på ett anpassat variabeluttryck – till exempel (!package=io.konveyor.demo.config-utils). |
|
--output-format |
Väljer utdataformatet. Antingen yaml eller json. Standardvärdet är yaml. |
|
--overwrite |
Skriver över den befintliga utdatakatalogen. Standardvärdet är false. |
|
--skip-static-report |
Hoppar över att generera en statisk analysrapport. Standardvärdet är false. |
Källor som stöds
Parametern --list-sources visar följande källtekniker:
| Källnamn | Beskrivning | Källa |
|---|---|---|
| Java | Metodtips för migrering av Java-program. | java |
| Java EE | Metodtips för migrering av Java EE-teknik. | java-ee |
| OpenJDK | Metodtips för att migrera program med OpenJDK. | openjdk |
| OpenJDK 8 | Metodtips för att migrera program med OpenJDK 8. | openjdk8 |
| OpenJDK 9 | Metodtips för att migrera program med OpenJDK 9. | openjdk9 |
| OpenJDK 10 | Metodtips för att migrera program med OpenJDK 10. | openjdk10 |
| OpenJDK 11 | Metodtips för att migrera program med OpenJDK 11. | openjdk11 |
| OpenJDK 12 | Metodtips för att migrera program med OpenJDK 12. | openjdk12 |
| OpenJDK 13 | Metodtips för att migrera program med OpenJDK 13. | openjdk13 |
| OpenJDK 14 | Metodtips för att migrera program med OpenJDK 14. | openjdk14 |
| OpenJDK 15 | Metodtips för att migrera program med OpenJDK 15. | openjdk15 |
| OpenJDK 16 | Metodtips för att migrera program med OpenJDK 16. | openjdk16 |
| OpenJDK 17 | Metodtips för att migrera program med OpenJDK 17. | openjdk17 |
| OpenJDK 18 | Metodtips för att migrera program med OpenJDK 18. | openjdk18 |
| OpenJDK 19 | Metodtips för att migrera program med OpenJDK 19. | openjdk19 |
| OpenJDK 20 | Metodtips för att migrera program med OpenJDK 20. | openjdk20 |
| OpenJDK 21 | Metodtips för att migrera program med OpenJDK 21. | openjdk21 |
| Oracle JDK | Metodtips för migrering av program med Oracle JDK. | oraclejdk |
| Oracle JDK 7 | Metodtips för migrering av program med Oracle JDK 7. | oraclejdk7 |
| RMI | Metodtips för migrering av Java-program som använder RMI-teknik. | rmi |
| Fjärrprocedureanrop (RPC) | Metodtips för att migrera Java-program som använder RPC-teknik. | rpc |
| Spring 5 | Metodtips för migrering av program som använder Spring 5-teknik. | spring5 |
| Spring Boot | Metodtips för migrering av Spring Boot-teknik. | springboot |
| Medarbetarstödsprogram (EAP) | Metodtips för migrering av Java-program som använder JBoss EAP-teknik. | eap |
| EAP 7 | Metodtips för migrering av Java-program som använder JBoss EAP 7-teknik. | eap7 |
Mål som stöds
Parametern --list-targets visar följande måltekniker:
| Målnamn | Beskrivning | Mål |
|---|---|---|
| Azure App Service | Metodtips för att distribuera en app till Azure App Service. | azure-appservice |
| Azure Kubernetes Service | Metodtips för att distribuera en app till Azure Kubernetes Service. | azure-aks |
| Azure Container-applikationer | Metodtips för att distribuera en app till Azure Container Apps. | azure-container-apps |
Operativsystem som stöds
Parametern --list-os visar följande operativsystem:
| Operativsystemets namn | Beskrivning | OS |
|---|---|---|
| Linux | Metodtips för att migrera program till Linux-plattformen. | linux |
| Windows | Metodtips för att migrera program till Windows-plattformen. | windows |
Funktioner som stöds
Parametern --list-capabilities visar följande funktioner:
| Kapacitetsnamn | Beskrivning | Capability |
|---|---|---|
| Containerisering | Metodtips för containerisering av program. | containerization |
| OpenJDK 11 | Metodtips för migrering till OpenJDK 11. | openjdk11 |
| OpenJDK 17 | Metodtips för migrering till OpenJDK 17. | openjdk17 |
| OpenJDK 21 | Metodtips för migrering till OpenJDK 21. | openjdk21 |
Konfigurera ignorera filer
I installationssökvägen för AppCAT CLI kan du konfigurera .appcat-ignore-filen för att undanta angivna mappar eller sökvägar när du kör appcat analyze kommandot.
Globala parametrar
| Parameter | Beskrivning |
|---|---|
--disable-telemetry |
Inaktiverar telemetri. |
--log-level |
Anger loggnivån. Standardvärdet är 4. |
--no-cleanup |
Förhindrar rensning av tillfälliga resurser efter genomförande. |
Exempel
Analysera en källkodskatalog:
appcat analyze --input <path-to-source> --output <path-to-output> --target <target-name>Analysera en källkodskatalog med specifika käll- och måltekniker:
appcat analyze \ --input <path-to-source> \ --output <path-to-output> \ --source springboot \ --target azure-aks,azure-appservice,azure-container-appsAnalysera en källkodskatalog med extra anpassade regler:
appcat analyze --input <path-to-source> --output <path-to-output> --rules <path-to-rules> --target <target-name>Analysera en källkodskatalog med endast anpassade regler, utan standardregleruppsättningar:
appcat analyze \ --input /path/to/source \ --output /path/to/output \ --enable-default-rulesets=false \ --rules /path/to/rules --target azure-aks,azure-appservice,azure-container-appsAnalysera och lägga till mer programanalys i en befintlig utdatakatalog och statisk rapport:
appcat analyze \ --input=<path-to-source-A>,<path-to-source-B>,<path-to-source-C> \ --output=<path-to-output-ABC> \ --target=<target-name> appcat analyze --bulk \ --input=<path-to-source-D> \ --output=<path-to-output-ABC> \ --target=<target-name> appcat analyze \ --bulk \ --input=<path-to-source-E> \ --output=<path-to-output-ABC> \ --target=<target-name>Analysera en källkodskatalog med en specifik källa för att kombinera måltekniker, funktioner och operativsystem:
appcat analyze \ --input <path-to-source> \ --output <path-to-output> \ --source springboot \ --target azure-aks,azure-appservice,azure-container-apps --capability containerization --os windowsParametrarna
--target,--capabilitiesoch-oskombineras med ettANDvillkor, vilket innebär att reglerna måste matcha följande villkor samtidigt:- En Azure-tjänst som
azure-aks,azure-appserviceellerazure-container-apps. - Möjligheten att identifiera containeriseringsproblem.
- Windows OS-plattformen.
- En Azure-tjänst som
Analysera en källkodskatalog och behåll de identifierade kontextraderna med anpassade radnummer:
appcat analyze \ --input <path-to-source> \ --output <path-to-output> \ --context-lines-number <line-number> --target=<target-name>Följande skärmbild visar ett exempel på hur du använder
--context-lines-number 3:Begränsa rapportinnehåll utan kodfragment:
appcat analyze \ --input <path-to-source> \ --output <path-to-output> \ --code-snips-number -1 --target=<target-name>När
--code-snips-number -1har angetts exporteras inte kodfragment till rapporten. Det här beteendet hjälper till att förhindra att känsliga data inkluderas.Du kan också kontrollera egenskapen
metadata.privacyModeireport.json.PrivacyModevärden:- Obegränsad – rapporten innehåller kodfragment.
- Begränsad – rapporten innehåller inte kodfragment.
Appcat-transformering
Konverterar Windup XML-regler till YAML.
Obligatoriska parametrar
| Parameter | Beskrivning |
|---|---|
--rules |
Konverterar XML-regler till YAML. |
Globala parametrar
| Parameter | Beskrivning |
|---|---|
--disable-telemetry |
Inaktiverar telemetri |
--log-level |
Anger loggnivån. Standardvärdet är 4. |
--no-cleanup |
Förhindrar rensning av tillfälliga resurser efter genomförande. |
Exempel
Följande exempel konverterar en windup XML-regel till YAML:
appcat transform rules --input <path-to-rule> --output <path-to-output-folder> --target=<target-name>
appcat-version
Skriver ut verktygsversionen.
appcat version