Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Bu makale, Java sürüm 7.x için yeni nesil Azure Geçişi uygulaması ve kod değerlendirmesine yöneliktir. Bu sürüm önizleme aşamasındadır. Önceki kararlı sürüm olan sürüm 6.x için bkz. Java için Azure Geçişi uygulaması ve kod değerlendirmesi.
Bu makalede, her tür Java uygulamasını değerlendirmek ve yeniden düzenlemek için Java için Azure Geçişi uygulaması ve kod değerlendirme aracının nasıl kullanılacağı gösterilmektedir. Araç, yeniden platform oluşturma ve Azure'a geçiş için uygulama hazırlığını değerlendirmenizi sağlar. Bu araç bir komut satırı arabirimi (CLI) olarak sunulur ve Azure için yeniden platform oluşturma ve geçiş fırsatlarını belirlemek üzere Java uygulama ikili dosyalarını ve kaynak kodunu değerlendirir. Yaygın kullanım örneklerini ve kod desenlerini belirleyerek ve önerilen değişiklikleri önererek büyük ölçekli Java uygulamalarını modernleştirmenize ve yeniden oluşturmanıza yardımcı olur.
Araç, statik kod analizi aracılığıyla uygulama teknolojisi kullanımını bulur, efor tahmini sağlar ve kod yeniden platformunu hızlandırır. Bu değerlendirme, Java uygulamalarının önceliklerini belirlemenize ve Azure'a taşımanıza yardımcı olur. Bir dizi altyapı ve kuralla, araç Java 11, Java 17, Jakarta EE, Spring, Hibernate, Java Message Service (JMS) ve daha fazlası gibi farklı teknolojileri keşfedebilir ve değerlendirebilir. Araç daha sonra Java uygulamasını farklı Azure hedeflerine (Azure Uygulaması Hizmeti, Azure Kubernetes Service ve Azure Container Apps) belirli Azure yeniden hazırlama kurallarıyla yeniden hazırlamanıza yardımcı olur.
Araç, Red Hat tarafından oluşturulan ve yönetilen Cloud Native Computing Foundation projesi Konveyor'daki bir bileşen kümesini temel alır.
Genel bakış
Araç, kuruluşların Java uygulamalarını maliyetleri düşürecek ve daha hızlı yeniliklere olanak sağlayacak şekilde modernleştirmelerine yardımcı olmak için tasarlanmıştır. Araç, herhangi bir Java uygulamasının yapısını ve bağımlılıklarını anlamak için gelişmiş analiz tekniklerini kullanır ve uygulamaları yeniden düzenleme ve Azure'a geçirme konusunda rehberlik sağlar.
Bununla, aşağıdaki görevleri gerçekleştirebilirsiniz:
- Teknoloji kullanımını keşfedin: Bir uygulamanın hangi teknolojileri kullandığını hızla görün. Çok fazla belge olmayan eski uygulamalarınız varsa ve hangi teknolojileri kullandıklarını öğrenmek istiyorsanız bulma yararlı olur.
- Kodu belirli bir hedefe değerlendirme: Belirli bir Azure hedefi için bir uygulamayı değerlendirme. Uygulamalarınızı Azure'a yeniden eklemek için yapmanız gereken çabayı ve değişiklikleri denetleyin.
Desteklenen hedefler
Araç, farklı Azure hizmetlerine dağıtabilmeniz ve kullanabilmeniz için uygulamalarınızı yeniden oluşturmanıza yardımcı olacak kurallar içerir.
Azure Geçişi uygulaması ve kod değerlendirmesi tarafından kullanılan kurallar bir hedefe göre gruplandırılır. Hedef, uygulamanın nerede veya nasıl çalıştığı ile genel ihtiyaçlar ve beklentilerdir. Bir uygulamayı değerlendirirken birden çok hedef seçebilirsiniz. Aşağıdaki tabloda kullanılabilir hedefler açıklanmaktadır:
Hedef adı | Açıklama | Hedef |
---|---|---|
Azure App Service | Bir uygulamayı Azure Uygulaması Hizmetine dağıtmak için en iyi yöntemler. | azure-appservice |
Azure Kubernetes Service | Azure Kubernetes Service'e uygulama dağıtmak için en iyi yöntemler. | azure-aks |
Azure Konteyner Uygulamaları | Azure Container Apps'e uygulama dağıtmaya yönelik en iyi yöntemler. | azure-container-apps |
Bulut Hazırlığı | Bir uygulamayı Bulut (Azure) için hazır hale getirmek için genel en iyi yöntemler. | cloud-readiness |
Linux işletim sistemi | Bir uygulamayı Linux'a hazır hale getirmek için genel en iyi yöntemler. | linux |
OpenJDK 11 | Java 11 ile Java 8 uygulaması çalıştırmaya yönelik genel en iyi yöntemler. | openjdk11 |
OpenJDK 17 | Java 17 ile Java 11 uygulaması çalıştırmaya yönelik genel en iyi yöntemler. | openjdk17 |
OpenJDK 21 | Java 21 ile Java 17 uygulaması çalıştırmaya yönelik genel en iyi yöntemler. | openjdk21 |
Araç Bulut Hazırlığı ve ilgili Azure hizmetlerini değerlendirdiğinde, farklı Azure hizmetlerinin olası kullanımına yönelik yararlı bilgiler de bildirebilir. Aşağıdaki listede kapsanan hizmetlerden birkaçı gösterilmektedir:
- Azure Veritabanları
- Azure Hizmet Otobüsü
- Azure Depolama
- Azure Content Delivery Network
- Azure Event Hubs
- Azure Key Vault
- Azure Ön Kapı
İndirme ve kurma
CLI'yı appcat
kullanmak için, paketi ortamınıza özgü olarak indirmeniz ve ortamınızda gerekli bağımlılıklara sahip olmanız gerekir.
appcat
CLI, Intel, Arm veya Apple Silicon donanımı kullanarak Windows, Linux veya Mac gibi herhangi bir ortamda çalışır. JDK gereksinimi için OpenJDK'nin Microsoft Derlemesi'ni kullanmanızı öneririz.
İşletim Sistemi | Mimari | Bağlantıyı İndir | Diğer dosyalar |
---|---|---|---|
x64 | |||
Windows | x64 | İndirmek | sha256 / Sıg |
macOS | x64 | İndirmek | sha256 / Sıg |
Linux işletim sistemi | x64 | İndirmek | sha256 / Sıg |
AArch64 | |||
Windows | AArch64 / ARM64 | İndirmek | sha256 / Sıg |
macOS | Apple Silicon | İndirmek | sha256 / Sıg |
Linux işletim sistemi | AArch64 / ARM64 | İndirmek | sha256 / Sıg |
Önkoşullar
-
OpenJDK 17'nin Microsoft Derlemesi'niindirin ve yükleyin. Ortam değişkeninin ayarlandığından
JAVA_HOME
emin olun.
AppCAT'i yükleme
appcat
uygulamasını yüklemek için platformunuza uygun zip dosyasını indirin. Dosyayı indirdikten sonra, işletim sisteminize bağlı olarak bir .tar.gz (Linux/macOS) veya .zip dosyası (Windows) bulmanız gerekir.
İndirilen dosyadan ikili dosyasını ayıklayın. Aşağıdaki klasör yapısını görmeniz gerekir:
/azure-migrate-appcat-for-java-cli-<OS>-<architecture>-<release-version>-preview/
├── appcat.exe (Windows) / appcat (Linux/macOS)
├── samples/
├── fernflower.jar
├── LICENSE
├── NOTICE.txt
├── maven.default.index
├── jdtls/
├── static-report/
├── rulesets/
├── readme.md
└── readme.html
AppCAT'i çalıştırma
Terminalinizde appcat
'ı herhangi bir konumdan çalıştırmak için arşivi istediğiniz konuma ayıklayın. Ardından ortam değişkenini PATH
, arşivi ayıkladığınız dizini içerecek şekilde güncelleştirin.
Uyarı
İkili appcat
çağrıldığında, ilk olarak ortam değişkeninde PATH
belirtilen yürütülebilir klasörde bağımlılıklarını arar. Bağımlılıklar bulunamazsa, kullanıcının giriş dizinine ( Linux/Mac üzerinde ~/.appcat veya Windows'da \.appcat%USERPROFILE% ) geri döner.
Kullanım
Alt Komutlar
AppCAT, kullanım için iki alt komut sağlar:
-
analyze
: Giriş kaynak kodunda ya da bir ikili dosyada kaynak kod analizi yapın. -
transform
: XML kurallarını önceki sürümlerden (6 ve üstü) bu sürüm tarafından kullanılan YAML biçimine dönüştürün.
Uyarı
macOS kullanıcıları için: Uygulamayı çalıştırmaya çalışırken bir hatayla Apple could not verify
karşılaşırsanız aşağıdaki komutu kullanarak bu hatayı düzeltebilirsiniz:
xattr -d -r com.apple.quarantine /path/to/appcat_binary
Örneğin:
xattr -d -r com.apple.quarantine $HOME/.appcat/appcat
Alt komutu analiz etme
Alt analyze
komut, kaynak kodu ve ikili analizi çalıştırmanızı sağlar.
Uygulama kaynak kodunu analiz etmek için aşağıdaki komutu kullanın:
./appcat analyze --input=<path-to-source-code> --output=<path-to-output-directory> --target=azure-appservice,cloud-readiness --overwrite
Bayrağın --input
bir kaynak kod dizinine veya ikili dosyaya işaret etmesi ve --output
çözümleme sonuçlarını depolamak için bir dizine işaret etmesi gerekir.
Analiz bayrakları hakkında daha fazla bilgi için aşağıdaki komutu kullanın:
./appcat analyze --help
AppCAT için kullanılabilir hedefleri denetlemek için aşağıdaki komutu kullanın:
./appcat analyze --list-targets
Bu komut aşağıdaki çıkışı oluşturur:
available target technologies:
azure-aks
azure-appservice
azure-container-apps
cloud-readiness
linux
openjdk11
openjdk17
openjdk21
Birden çok uygulamayı analiz etme
AppCAT, komut yürütme başına birden çok uygulama çözümlemesini destekler. Tek bir komutta birden çok uygulamayı analiz etmek için bayrağının giriş yollarının --input
virgülle ayrılmış bir listesini sağlayabilirsiniz. Çıkış dizini ve statik rapor, tüm uygulamalar için birleşik analiz sonuçlarını içerir.
Birden çok uygulamayı analiz etmek için aşağıdaki komutu kullanın:
./appcat analyze --input=<path-to-source-A>,<path-to-source-B>,<path-to-source-C> --output=<path-to-output-ABC> --target=<target-name>
AppCAT ayrıca mevcut bir çıkış dizinine ve statik rapora artımlı olarak daha fazla uygulama analizi eklemek için seçeneğini kullanmanıza --bulk
olanak tanır.
--bulk
seçeneğini kullandığınızda, aynı çıktıya yazan tüm komut yürütmelerinde onu tutarlı bir şekilde kullanmalısınız.
Uyarı
Birden çok giriş yolu sağladığınızda, --bulk
varsayılan olarak etkinleştirilir.
Mevcut statik rapora artımlı olarak daha fazla uygulama analizi eklemek için aşağıdaki komutu kullanın:
./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>
Alt komutu dönüştür
Alt komut, transform
6.x sürümünde kullanılan önceki appcat
XML kurallarını bu sürüm 7.x tarafından kullanılan yeni YAML biçimine dönüştürmenizi sağlar.
Kuralları dönüştürmek için aşağıdaki komutu kullanın:
./appcat transform rules --input=<path-to-xml-rules> --output=<path-to-output-directory>
Bayrağın --input
XML kuralları içeren bir dosya veya dizine işaret etmesi ve bayrağının --output
dönüştürülen YAML kuralları için çıkış dizinine işaret etmesi gerekir.
Örnekler
Uyarı
Ayıklanan klasördeki betikler için dosya izinlerinin yürütmeye izin verecek şekilde ayarlandığından emin olun.
Samples dizininde, farklı çözümleme türlerini çalıştırmak için aşağıdaki betikleri bulabilirsiniz:
- çalıştırma değerlendirmesi: Kod değerlendirmesi ve Airsonic'i Tomcat üzerinde Azure App Service'e geçirme adımlarını içeren bir rapor sağlar.
- run-assessment-transform-rules: Windup XML kurallarını analyzer-lsp uyumlu YAML kurallarına dönüştürür.
- run-assessment-custom-rules: Özel kurallar (XML'yi YAML'ye dönüştürme) kullanarak bir kod değerlendirme raporu sağlar.
- run-assessment-openjdk21: Kod değerlendirmesi ve Airsonic'i OpenJDK 21'e geçirme adımlarını içeren bir rapor oluşturur.
- run-assessment-package-only: Belirli paketleri değerlendirerek bir rapor oluşturur.
Bu betikler, müzik koleksiyonunuza erişmenizi ve bunları paylaşmanızı sağlayan topluluk odaklı, web tabanlı bir medya aktarıcı olan Airsonic-Advanced örnek projesiyle birlikte kullanılmak üzere tasarlanmıştır.
Aşağıdaki komutu kullanarak uygulama deposunu el ile kopyalayabilirsiniz:
git clone https://github.com/airsonic-advanced/airsonic-advanced.git
Kopyalamadan sonra, değerlendirme betiklerini çalıştırırken kopyalanan klasörün yolunu sağlayın. İşletim sisteminize bağlı olarak, aşağıdaki örnekte gösterildiği gibi uygun betiği çalıştırın:
Uyarı
Betikleri çalıştırmadan önce Airsonic Advanced projesini yerel bir yola kopyaladığınızdan emin olun.
./samples/run-assessment <path-to-airsonic-advanced>
Raporlar otomatik olarak oluşturulur ve başlatılır. Raporları ../samples/report-* (Linux/macOS) veya ..\samples\report-* (Windows) altında bulabilirsiniz.
Analizin özeti
Raporun giriş sayfasında tüm analiz edilen uygulamaların özet görünümü gösterilir. Buradan, ayrıntılı bulguları keşfetmek için tek tek uygulama raporlarına gidebilirsiniz.
Sağ üst köşedeki Copilot'a Sorun düğmesi sizi Visual Studio Code'daki GitHub Copilot App Modernization for Java uzantısına yönlendirir. Bu uzantı, AppCAT ve GitHub Copilot'un yapay zeka özellikleriyle desteklenen Java uygulamalarını Azure'a geçirmek için temel özellikleri olarak hem uygulama değerlendirmesi hem de kod düzeltmesi sağlar.
Değerlendirme raporu
Değerlendirme raporu, uygulamayı Azure'a başarıyla geçirmek için ele almanız gereken Azure hazırlığı, bulut yerel ve Java modernleştirmesinin çeşitli yönlerini içeren kategorilere ayrılmış bir sorun listesi sağlar.
Her Sorun önem derecesine ( Zorunlu, İsteğe Bağlı veya Potansiyel ) göre kategorilere ayrılmıştır ve etkilenen kod satırlarının sayısını içerir.
Bağımlılıklar ve Teknolojiler sekmeleri, uygulama içinde kullanılan kitaplıkları ve teknolojileri görüntüler.
Belirli bir sorun için ayrıntılı bilgi
Her sorun için, yalnızca seçerek daha fazla bilgi (sorun ayrıntıları, kuralın içeriği vb.) alabilirsiniz. Bu sorundan etkilenen tüm dosyaların listesini de alırsınız.
Ardından, sorundan etkilenen her dosya veya sınıf için kaynak koda atlayarak sorunu oluşturan kod satırını vurgulayabilirsiniz.
Sürüm notları
7.6.0.7
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
- Gradle tabanlı Spring uygulamalarını analiz etme desteği.
- Open Liberty projelerini analiz etme desteği.
- Değerlendirme sırasında işlenen kural sayısını görüntüleyerek değerlendirme ilerleme durumunu gösterin.
- Önkoşullardan Maven kaldırıldı.
- Yayımlanan yapıtlarda
airsonic.war
,airsonic-advanced
ile örnek uygulama olarak değiştirildi.
7.6.0.6
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
- Varsayılan bir .appcat-ignore dosyası artık varsayılan olarak yayın paketine eklenmiştir. Bu dosya, aracın analiz edilmesi gerekmeyen belirtilen klasörleri veya yolları dışlamasına neden olur.
-
full
modunu kullanırken raporda eksik bağımlılıkların sorunu düzeltildi (bu,--mode
kullanılarak belirtilir). - Hiçbir hedef belirtilmediğinde AppCAT tarafından desteklenen hedeflere yönelik kapsamlı analiz.
- Analiz sırasında açıklama satırları yoksayıldı.
- XML kuralları için yanlış konum düzeltildi.
7.6.0.5
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
- Bayrağı
--input
artık birden çok değeri kabul ederek tek bir komut yürütmesinde birden çok uygulamayı analiz etmenizi sağlar. - Statik rapor, daha iyi okunabilirlik için sorun listesini kategorilere ayırır.
- Kullanıcılar artık AppCAT'i kullanıcının giriş dizini dışındaki dizinlere yükleyebilir.
- Hem
analyze
hem de--bulk
ile birlikte--skip-static-report
çalıştırılırken birden çok çıkış dosyası oluşturulamaması sorununu düzelttik. - java sağlayıcısı başlatılmamışsa
--bulk
ve--rules
ile analiz edilirken oluşan bir sorun düzeltildi. - Belirtilen paket bulunamadığında
--packages
bayrağı kullanıldığında çözümlemenin başarısız olmasına neden olan bir sorun düzeltildi. -
--exclude-paths
Bayrağı kullanım dışı bırakıldı. Dosyaları veya dizinleri dışlamak için giriş dizinine veya yükleme dizinine yerleştirilen .appcat-ignore dosyasını (glob desenlerini destekleyen) kullanın.
7.6.0.4
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
- Telemetri koleksiyonunu destekler. Telemetriyi devre dışı bırakmak için bayrağını
--disable-telemetry
kullanın. - Cli komut biçimini daha net hale getirmek için yeniden düzenlemektedir.
-
--source
bayrağını güncelleyerek--source <source1> --source <source2> ...
'den--source <source1>,<source2>,...
'ye değiştirir. -
--target
bayrağını güncelleyerek--target <target1> --target <target2> ...
'den--target <target1>,<target2>,...
'ye değiştirir. -
--rules
bayrağını güncelleyerek--rules <rule1> --rules <rule2> ...
'den--rules <rule1>,<rule2>,...
'ye değiştirir. -
--maven-settings
bayrağını--custom-maven-settings
olarak günceller -
--limit-code-snips
bayrağını--code-snips-number
olarak günceller -
--json-output
bayrağını kaldırır,--output-format
bayrağını kullanır, çıkış biçimini seçin: 'yaml' veya 'json'. (varsayılan yaml) -
--provider
, ,--override-provider-settings
--list-providers
ve--dependency-folders
bayraklarını kaldırır
-
- Yeni
--exclude-paths
bir bayrak: Çözümlemede göz ardı edilmesi gereken yolları belirtir. Birden çok değer için virgülle ayrılmış bir liste kullanın:--exclude-paths <path1>,<path2>,...
. Varsayılan değer şudur:[]
. - Yeni
--packages
bir bayrak: Değerlendirilecek uygulama sınıfı paketlerini belirtir. Birden çok değer için virgülle ayrılmış bir liste kullanın:--packages <package1>,<package2>,...
. Varsayılan değer şudur:[]
. - Yeni
--dry-run
bir bayrak: Gerçekte analizi çalıştırmadan yalnızca bayrakların geçerli olup olmadığını denetler. Varsayılan değer şudur:false
. -
azure-spring-apps
öğesini uygulama kategorisinden--list-targets
kaldırır.
7.6.0.3
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
- Yeni
--limit-code-snips
bayrak: Kural değerlendirmesi sırasında kod parçacığı sınırlarını denetler (0=sınırsız, -1=kod parçacıklarını devre dışı bırak). - Toplu analiz modunda eksik bağımlılık dosyası hataları düzeltildi: Araç artık
--mode=source-only
kullanılarak Java dışı projelerde veya Java projelerinde yapılan toplu analiz sırasında durmaz.
7.6.0.2
Bu sürüm aşağıdaki düzeltmeleri içerir.
-
java-removals-00150
kuralı artık doğru şekilde tetikleniyor.
7.6.0.1
Bu sürüm aşağıdaki düzeltmeleri ve geliştirmeleri içerir.
-
--analyze-known-libraries
bayrağı: Artık Windows üzerinde çalışıyor. - Dizin temizleme: Windows'ta analiz sırasında oluşturulan ek dizinler artık otomatik olarak temizleniyor.
-
--json-output
flag: Artık çalışır durumda. - Kural ayrıştırma hatası: Hata
unable to parse all the rules for ruleset
çözüldü. - İçgörüler sekmesi açıklamaları: Eksik kural açıklamaları artık mevcut.
- İnternet bağlantısı bağımlılığı: Analiz artık İnternet bağlantısı olmadan başarısız olmaz.
-
--context-lines
flag: Şimdi 0 olarak ayarlandığında beklendiği gibi davranır. - Aracı çalıştırmak için Python gereksinimi kaldırıldı.
7.6.0.0
Bu sürüm, Konveyor projesinin farklı bir bileşen kümesini temel alır.
Genel Güncelleştirmeler
- Konveyor Analyzer LSP projesine dayalı yeni altyapı, Konveyor Kantra projesine dayalı bir CLI ile.
6.3.9.0
Bu sürüm aşağıdaki düzeltmeleri içerir ve bir dizi yeni kural içerir.
Genel Güncelleştirmeler
- Windup ana deposundan entegre edilen değişiklikler (6.3.9.Final Sürümü).
- Kural açıklamalarında ve yardım metninde bozuk bağlantılar çözüldü.
Kurallar
- Azure İleti Kuyruğu:
azure-message-queue-rabbitmq
veazure-message-queue-amqp
için güncelleştirildi ve yeni kurallar eklendi. - Azure Service Bus: Azure Service Bus için bir algılama kuralı kullanıma sunulmuştur.
- MySQL ve PostgreSQL: Geliştirilmiş bağımlılık algılama kuralları.
- Azure-AWS Kuralları: Gelişmiş ve geliştirilmiş mevcut kurallar.
- S3 Spring Starter: S3 Spring Starter için bir algılama kuralı eklendi.
- RabbitMQ Spring JMS: RabbitMQ Spring JMS için bir algılama kuralı eklendi.
- Kayıt Kuralları: güncellenmiş ve geliştirilmiş kayıtla ilgili kurallar.
- Yerel Depolama Kuralı: Yerel depolama kuralı güncelleştirildi ve iyileştirilir.
- Azure Dosya Sistemi Kuralı: Azure Dosya Sistemi kuralı güncelleştirildi ve iyileştirilir.
Kütüphaneler
- Güvenlik açıklarını gidermek için kitaplıklar güncelleştirildi.
6.3.0.9
Bu sürüm aşağıdaki düzeltmeleri içerir ve bir dizi yeni kural içerir.
- Kuralla
localhost-java-00001
ilgili bir sorun çözüldü. - AWS S3, AWS SQS, Alibaba Bulut İşletim Sistemi S, Alibaba Cloud SMS, Alibaba Scheduler X, Alibaba Cloud Seata ve Alibaba Rocket MQ gibi teknolojileri tanımlamak için yeni kurallar eklendi.
- şimdi
azure-file-system-02000
XML dosya uzantılarını destekleyecek şekilde güncelleştirildi. - Güvenlik açıklarını gidermek için çeşitli kitaplıklar yükseltildi.
6.3.0.8
Daha önce, bir hedef kümesi varsayılan olarak etkinleştirildiğinden, bazı müşterilerin daha az kritik sorunlarla ilgili çok fazla sorunu olan büyük uygulamaları değerlendirmesini zorlaştırıyordu. Raporlarda gürültüyü azaltmak için kullanıcıların artık yürütürken --target
parametresiyle appcat
birden çok hedef belirtmesi gerekir ve bu sayede yalnızca önemli hedefleri belirleme seçeneği sunulur.
6.3.0.7
Azure Migrate uygulaması ve kod değerlendirmesinin GA (Genel Kullanıma Sunuldu) sürümü.
Bilinen sorunlar
7.6.0.7
- Kural sorunları:
-
azure-system-config-01000
kurallar tetiklenmiyor. - Kural
azure-password-01000
, aynı dosyada birden çok ihlal olsa bile yalnızca bir ihlal algılar.
-
- Windows'taki İzleyici Hata kanalında bir hata:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir.
7.6.0.6
- Kural sorunları:
-
azure-system-config-01000
kurallar tetiklenmiyor. - Kural
azure-password-01000
, aynı dosyada birden çok ihlal olsa bile yalnızca bir ihlal algılar.
-
- Windows'taki İzleyici Hata kanalında bir hata:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir.
7.6.0.5
- Kural sorunları:
-
azure-system-config-01000
kurallar tetiklenmiyor. - Kural
azure-password-01000
, aynı dosyada birden çok ihlal olsa bile yalnızca bir ihlal algılar.
-
- Windows'taki İzleyici Hata kanalında bir hata:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir.
7.6.0.4
- Kural sorunları:
-
azure-system-config-01000
kurallar tetiklenmiyor. - Kural
azure-password-01000
, aynı dosyada birden çok ihlal olsa bile yalnızca bir ihlal algılar.
-
- Windows'taki İzleyici Hata kanalında bir hata:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir.
7.6.0.3
- Bayrağı
--overrideProviderSettings
desteklenmez. - Kural sorunları:
-
azure-system-config-01000
,http-session-01000
kurallar tetiklenmiyor. -
FileSystem - Java IO
kuralı tetiklenmiyor.
-
- Windows'da WAR dosyalarının çözümlenmesi şu hatayı üretir:
Failed to Move Decompiled File
. Windows işletim sisteminde oluşturulan birkaç yedekli sorundan sorumlu olan Windows'da WAR dosyaları analiz edilirken bir hata oluşur. - Windows'daki İzleyici Hata kanalında bir hata oluştu:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir. - Ctrl+C devam eden analizi durduramıyor. Geçici bir çözüm olarak, işlemi açıkça sonlandırarak işlemi el ile sonlandırın.
- İkili çözümleme raporlarında kod parçacığı başlığı yanlış veya var olmayan bir dosya yolu gösterir.
7.6.0.2
- Bayrağı
--overrideProviderSettings
desteklenmez. - Kural sorunları:
-
azure-system-config-01000
,http-session-01000
kurallar tetiklenmiyor. -
FileSystem - Java IO
kuralı tetiklenmiyor.
-
- Windows'da WAR dosyalarının çözümlenmesi şu hatayı üretir:
Failed to Move Decompiled File
. Windows işletim sisteminde oluşturulan birkaç yedekli sorundan sorumlu olan Windows'da WAR dosyaları analiz edilirken bir hata oluşur. - Windows'daki İzleyici Hata kanalında bir hata oluştu:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir. - Ctrl+C devam eden analizi durduramıyor. Geçici bir çözüm olarak, işlemi açıkça sonlandırarak işlemi el ile sonlandırın.
- İkili çözümleme raporlarında kod parçacığı başlığı yanlış veya var olmayan bir dosya yolu gösterir.
7.6.0.1
- Bayrağı
--overrideProviderSettings
desteklenmez. - Kural sorunları:
-
azure-system-config-01000
,http-session-01000
,java-removals-00150
kuralları tetiklenmiyor. -
FileSystem - Java IO
kuralı tetiklenmiyor.
-
- Windows'da WAR dosyalarının çözümlenmesi şu hatayı üretir:
Failed to Move Decompiled File
. Windows işletim sisteminde oluşturulan birkaç yedekli sorundan sorumlu olan Windows'da WAR dosyaları analiz edilirken bir hata oluşur. - Windows'daki İzleyici Hata kanalında bir hata oluştu:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir. - Ctrl+C devam eden analizi durduramıyor. Geçici bir çözüm olarak, işlemi açıkça sonlandırarak işlemi el ile sonlandırın.
- İkili çözümleme raporlarında kod parçacığı başlığı yanlış veya var olmayan bir dosya yolu gösterir.
7.6.0.0
- Bayrak
--analyze-known-libraries
Windows üzerinde çalışmıyor. - Windows'da, çözümleme işlemi sırasında aşağıdaki ek klasörler oluşturulur ancak tamamlandıktan sonra otomatik olarak kaldırılmaz. Çözümleme tamamlandıktan sonra bu ek klasörleri kaldırmak isteyebilirsiniz.
- .metadata
- org.eclipse.osgi
- org.eclipse.equinox.app
- org.eclipse.core.runtime
- org.eclipse.equinox.launcher
- Bayrağı
--overrideProviderSettings
desteklenmez. - Bayrağı
--json-output
desteklenmez. Gelecek bir sürümde output.yaml ve dependency.yaml dosyaları için JSON çıkışları oluşturur. - Kural sorunları:
-
azure-system-config-01000
,http-session-01000
,java-removals-00150
kuralları tetiklenmiyor. -
FileSystem - Java IO
kuralı tetiklenmiyor. - Analiz çalıştırılırken hata
unable to parse all the rules for ruleset
oluştu. Bu hata, araç kural kümesindeki tüm kuralları ayrıştırmada başarısız olduğunda analiz sırasında oluşur.
-
- Windows'da WAR dosyalarının çözümlenmesi şu hatayı üretir:
Failed to Move Decompiled File
. Windows işletim sisteminde oluşturulan birkaç yedekli sorundan sorumlu olan Windows'da WAR dosyaları analiz edilirken bir hata oluşur. - İçgörüler sekmesinde bazı kuralların açıklamaları eksik. Bazı etiket kurallarında açıklama bulunmaması, raporun İçgörüler sekmesinde boş başlıkların görünmesine neden olur.
- Windows'da İzleyici Hata kanalında hata:
Windows system assumed buffer larger than it is, events have likely been missed
. Bu hata iletisi, Windows'ta uzun süre çalışan işler sırasında komut satırında görüntülenir. - Bu sürüm, bağımlılık analizi için etkin bir İnternet bağlantısı gerektirir.
- Ctrl+C devam eden analizi durduramıyor. Geçici bir çözüm olarak, işlemi açıkça sonlandırarak işlemi el ile sonlandırın.
- Bayrak
--context-lines
0 sayısı olarak ayarlandığında beklendiği gibi çalışmaz. Bu bayrak, kullanıcının kaynak kodun raporda ne kadarının görüneceğini sınırlamasını sağlar. 0 değerine ayar yapmak beklendiği gibi çalışmayabilir.
Lisans
Java için Azure Geçişi uygulaması ve kod değerlendirmesi ücretsiz, açık kaynak tabanlı bir araçtır.
Veri toplama
AppCAT varsayılan olarak telemetri verilerini toplar. Microsoft, yaygın sorunları belirlemek ve AppCAT CLI deneyimini geliştirmek için kullanım desenlerini tanımlamak için toplanan verileri toplar. Microsoft AppCAT CLI herhangi bir özel veya kişisel veri toplamaz. Örneğin, kullanım verileri düşük başarı oranına sahip komutlar gibi sorunları tanımlamaya yardımcı olur. Bu bilgiler çalışmalarımızın önceliklerini belirlememize yardımcı olur.
Bu verilerin sağladığı içgörüler bizim için önemli olsa da herkesin kullanım verilerini göndermek istemeyebileceğini de anlıyoruz. komutunu kullanarak veri toplamayı appcat analyze --disable-telemetry
devre dışı bırakabilirsiniz. Daha fazla bilgi için