31 most frequently asked maven interview questions answers
W tym samouczku przedstawiliśmy najczęściej zadawane pytania i odpowiedzi w rozmowie z Maven dla początkujących i doświadczonych kandydatów:
Podobnie jak w przypadku wszystkich rozmów kwalifikacyjnych, kandydaci muszą przygotować się do udzielenia odpowiedzi na najczęściej zadawane pytania podczas rozmów kwalifikacyjnych w Maven. Ten samouczek z pewnością pomoże Ci przygotować się do nadchodzącej rozmowy kwalifikacyjnej.
=> Przeczytaj serię szkoleń Easy Maven.
Pytania do wywiadu Maven z odpowiedziami
Pytanie nr 1) Co masz na myśli mówiąc Maven?
Odpowiedź : Maven to narzędzie do zarządzania projektami (wprowadzone przez Apache Software Foundation), które zapewnia pełną strukturę dla cyklu kompilacji. Jest open-source i jest używany głównie w projekcie rozwijanym w Javie.
Maven jest sterowany przez model obiektowy projektu, popularnie znany jako POM. Jest to centralne repozytorium wszystkich zależności. Utrzymuje tę samą konwencję folderów w różnych organizacjach i można go łatwo zintegrować z narzędziami ciągłej integracji, takimi jak Jenkins.
Poza tym zajmuje się raportowaniem i dokumentacją projektu. Jest napisany w języku Java.
Pytanie 2) Jakie są cechy lub zalety Maven?
Odpowiedź :
Cechy lub zalety Maven są następujące:
- Nie jest wymagane ręczne dodawanie słoików do projektu. Aktualizacje zależności projektu i zależności przechodnich są wykonywane automatycznie przez Maven.
- Maven utrzymuje jednolitą strukturę katalogów w całej organizacji.
- Maven zajmuje się zarówno wdrażaniem, jak i budowaniem.
- Maven jest prosty, łatwy do zrozumienia, konfigurowania i wykorzystania w projektach, ponieważ jest sterowany przez plik POM.
- Szybko rozwijające się repozytorium Maven zawiera dużą liczbę bibliotek, które mogą być używane jednocześnie do wielu projektów.
- Maven zachęca do korzystania z rozszerzalnego projektu kodu.
Pytanie nr 3) Nazwij aspekty, którymi zarządza Maven.
Odpowiedź : Aspekty zarządzane przez Maven to dokumentacja, kompilacje, SCM, wydania, dystrybucja, listy mailingowe, zależności i raportowanie.
P # 4) Co oznacza cykl życia kompilacji Maven? Nazwij te cykle.
Odpowiedź : Cykl życia kompilacji Mavena składa się z pewnych faz. Określa kolejność, w jakiej cele Mavena muszą być wykonywane. Jeśli jakaś faza ma zostać ukończona, wszystkie poprzednie fazy przed tą konkretną fazą muszą zostać pomyślnie przeprowadzone w kolejności.
Cykle życia kompilacji Maven są wymienione poniżej w następujący sposób:
- Czysty : Usuwa artefakt utworzony z poprzednich procesów kompilacji.
- Domyślna : Zadbano o proces wdrażania i kompilacji.
- Teren : Dokumentacja projektowa jest wykonywana w tym cyklu.
Pytanie nr 5) Za co odpowiada narzędzie do kompilacji?
Odpowiedź : Narzędzia do budowania są głównie odpowiedzialne za tworzenie kodu źródłowego (pod warunkiem, że używany jest kod generowany automatycznie). Tworzy dokumentację projektową z kodu źródłowego.
Kompiluje i pakuje kod w postaci pliku JAR / ZIP. Na koniec umieszcza ten kod w repozytorium lokalnym, centralnym lub zdalnym.
P # 6) Co masz na myśli mówiąc o POM i co ono zawiera?
Odpowiedź: Project Object Model lub pom stanowi elementarną część pracy Mavena. Podczas wykonywania celu lub zadania Maven, plik pom znajdujący się w bieżącym katalogu jest przeszukiwany i odsyłany do zbierania informacji o projekcie.
Zasadniczo jest to plik xml. Zawiera szczegóły konfiguracji, takie jak wtyczki, cele, programiści, zależności, profile, wersje i listy mailingowe.
Na przykład ,aby dodać zależności Excela w Selenium, musimy dodać zależności wklejone poniżej.
Pytanie 7) Co masz na myśli, mówiąc o repozytorium Maven?
Odpowiedź: Repozytorium Maven to lokalizacja katalogu, w którym przechowywane są wszystkie powiązane artefakty projektu, pliki słoików, biblioteki, wtyczki i mogą być z łatwością wykorzystywane przez Maven.
Pytanie nr 8) Wyjaśnij różne typy repozytoriów Maven.
Odpowiedź: Istnieją trzy typy repozytoriów Maven.
Oni są:
- Lokalne repozytorium: Jest to umieszczane na naszej lokalnej maszynie zazwyczaj w .m2 informator. Jest to generowane, gdy jesteśmy w stanie pomyślnie wykonać polecenie Mavena. Znajdują się tutaj wszystkie zależności projektu. Gdy Maven przeskanuje plik pom, najpierw szuka jego zależności w lokalnym repozytorium.
- Centralne repozytorium: Jest to dostarczane przez Apache Maven. Zawiera większość rutynowo używanych bibliotek. Gdy żadna z zależności nie zostanie znaleziona w lokalnym repozytorium, Maven łączy się z centralnym repozytorium.
- Zdalne repozytorium: Czasami firmy tworzą własne, niestandardowe repozytorium zawierające artefakty projektów, słoiki i biblioteki. Jest to rodzaj repozytorium, które pozostaje prywatne do użytku wewnątrz tej organizacji.
Q # 9) Wyjaśnij Artefakt Mavena.
Odpowiedź: Artefakt Mavena jest znany jako plik (zazwyczaj jar), który jest rozszerzany do repozytorium Mavena. Kompilacja Mavena generuje wiele artefaktów, w tym słoik źródła i skompilowany słoik. GroupId, artifactId i version razem tworzą artefakt i wszystkie te trzy połączone tylko go identyfikują.
Poniższy fragment kodu przedstawia przykład artefaktu Mavena.
org.selenium seleniumJava 4.0.2
P # 10) Wypisz różne zakresy zależności Mavena.
Odpowiedź:
Różne zakresy zależności Mavena obejmują:
- Skompilować : Ten zakres jest wymagany do kompilowania, testowania i uruchamiania projektu i jest dostępny domyślnie.
- Opatrzony: Ten zakres jest potrzebny do kompilowania i testowania projektu i jest dostępny w czasie wykonywania.
- Czas działania: Ten zakres nie jest wymagany do kompilacji, ale jest potrzebny do wykonania.
- Test: Ten zakres jest potrzebny do kompilacji i uruchamiania przypadków testów jednostkowych.
- System: Tego zakresu nie można pobrać ze zdalnego repozytorium i należy go umieścić w lokalnej ścieżce projektu.
- Import: Ten zakres jest używany, gdy zależności są typu pom.
Pytanie 11) Jakie są różnice między Mavenem a Antem?
Odpowiedź: Różnice między Mavenem i Antem są wymienione poniżej:
Maven | Mrówka |
---|---|
Maven ma charakter opisowy, a większość informacji o projekcie jest zdefiniowanych w pliku pom. | Mrówka ma postać procedury lub metody, w której wszystkie instrukcje do wykonania są podane w kolejności. |
Maven podąża za cyklem życia. | Mrówka nie podlega żadnemu cyklowi życia. |
Maven jest uważany za ramy. | Mrówka jest uważana za skrzynkę z narzędziami. |
Maven to narzędzie do zarządzania projektami i kompilacji. | Mrówka to narzędzie używane tylko do procesu budowania. |
Wtyczki Maven można ponownie wykorzystać. | Skryptów Ant nie można używać ponownie. |
Na przykład Maven postępuje zgodnie z protokołem, projekty Maven mają jednolitą strukturę katalogów w całej organizacji. | Ant nie przestrzega żadnego konkretnego protokołu. |
P # 12) Co masz na myśli mówiąc o Archetypie Mavena?
Odpowiedź: Archetyp Mavena to w zasadzie wtyczka, której zadaniem jest generowanie struktury projektu według określonego szkieletu lub szablonu.
Do utworzenia szablonu projektu służy następujące polecenie:
archetyp mvn: generuj
Q # 13) Jak określić wersję Mavena w naszym systemie?
Odpowiedź: Aby określić wersję Mavena, której używamy w naszym systemie, musimy wpisać w konsoli poniższe polecenie.
mvn - wersja
P # 14) Co jest znane jako SNAPSHOT w Maven?
Odpowiedź: Migawka Mavena to wersja, która wciąż nie została wydana. Przed ukończeniem pierwszego wydania dostępna jest wersja 1.0-SNAPSHOT. W przyszłości ta wersja pojawi się jako wersja 1.0. Nazywa się to obecną kopią rozwojową. Maven szuka nowej wersji SNAPSHOT w zdalnym repozytorium.
Q # 15) Jak wspomnieć o profilach w Maven?
Odpowiedź: Profile są wymieniane w Maven za pomocą podzbioru elementów obecnych w pliku pom.
Pytanie nr 16) Czym są wtyczki Maven?
Odpowiedź: Wtyczki Maven są podstawowym składnikiem frameworka Maven. Każda z wtyczek ma do wykonania określone zadanie.
Maven generalnie wykonuje następujące funkcje:
- Generuje pliki jar.
- Generuje pliki wojenne.
- Kompiluje kod.
- Wykonuje testy jednostkowe kodu.
- Generuje dokumentację projektu.
- Generuje niestandardowe raporty.
Wtyczka Maven udostępnia grupę celów, które można uruchomić za pomocą następującej składni polecenia:
mvn (nazwa-wtyczki): (nazwa-celu)
P # 17) Jakie są rodzaje wtyczek Maven?
Odpowiedź:
Poniżej wymieniono różne typy wtyczek Maven:
- Tworzenie wtyczek: Te wtyczki są używane podczas kompilacji i są zdefiniowane w elemencie konstrukcyjnym pliku pom.
- Wtyczki raportowania: Te wtyczki są używane podczas generowania witryny i są zdefiniowane w elemencie raportującym pliku pom.
P # 18) Co oznacza bramka w Maven?
Odpowiedź: Zbiór celów Mavena stanowi fazę. Każdy cel jest zdefiniowany dla konkretnego zadania związanego z zarządzaniem projektem i wykonaniem kompilacji.
Q # 19) Nazwij fazy kompilacji w cyklu życia kompilacji Maven.
Odpowiedź: Fazy kompilacji w cyklu życia kompilacji Maven są wymienione poniżej:
- Uprawomocnić: Sprawdza, czy uzyskano wszystkie informacje o warunkach wstępnych wyzwalania kompilacji.
- Skompilować: Skompilowano kod źródłowy projektu.
- Test: Skompilowany kod źródłowy jest testowany w ramach testów jednostkowych. W tej fazie kod nie jest wdrażany ani pakowany.
- Pakiet: Kod źródłowy po kompilacji jest pakowany w postaci plików ZIP lub JAR.
- Test integracyjny: Po wdrożeniu pakietu w środowisku wykonywane są przypadki testowe integracji.
- Zweryfikować: Sprawdza, czy opakowanie jest poprawne i spełnia wszystkie wymagane specyfikacje jakościowe.
- Zainstalować: Instalacja pakietów do lokalnego repozytorium.
- Rozmieścić: Próbka ostatecznego pakietu jest udostępniana zdalnemu repozytorium w celu dystrybucji wśród innych programistów w różnych projektach.
P # 20) Jaka jest lokalizacja, z której pobierane są zależności Mavena?
Odpowiedź: Artefakty projektu, zależności i pliki JAR pobrane przez Maven są umieszczane w lokalnym repozytorium Maven. Folder .m2 jest domyślnie lokalizacją lokalnego repozytorium. Tę domyślną lokalizację można zmienić w pliku settings.xml.
P # 21) Nazwij fazy cyklu Maven Clean Lifecycle.
Odpowiedź:
Poniżej wymieniono fazy cyklu Maven Clean Lifecycle:
- czyszczenie wstępne
- czysty
- po czyszczeniu
P # 22) Jaki jest cel polecenia mvn clean w Maven?
Odpowiedź: mvn clean ma na celu wyczyszczenie artefaktów projektu utworzonych przez poprzednie kompilacje Mavena z katalogów docelowych. Jest to zwykle wykonywane przed rozpoczęciem nowego procesu kompilacji.
P # 23) Co masz na myśli, mówiąc o tworzeniu profili w Maven?
Odpowiedź: Profil kompilacji to zbiór konfiguracji, które ułatwiają umieszczanie wartości lub zastępowanie wartości domyślnych wymaganych w procesie kompilacji w Maven.
Możemy zaprojektować proces kompilacji dla różnych środowisk, takich jak programowanie, testowanie i produkcja. Profile są opisane w plikach pom za pomocą i są zwykle używane do wskazywania różnych środowisk.
Q # 24) Wypisz typy profili Maven Build.
Odpowiedź:
Typy profili Maven Build są wymienione poniżej:
- Na użytkownika: Jest to opisane w pliku settings.xml Maven.
- Na projekt: Jest to opisane w pom.xml projektu.
- Światowy : Jest to opisane w globalnym pliku Maven settings.xml.
P # 25) Co masz na myśli przez zewnętrzne zależności Mavena?
Odpowiedź: Gdy Maven czyta plik pom, poznaje listę zależności projektu. Wyszukuje te zależności w repozytoriach lokalnych, centralnych i zdalnych. W przypadku jakiejkolwiek zależności, której nie ma w żadnym z repozytoriów, Maven wykorzystuje zależność zewnętrzną.
jakie jest najlepsze oprogramowanie do tworzenia aplikacji
P # 26) Jakie parametry są wymagane do zdefiniowania zależności zewnętrznych w Maven?
Odpowiedź: Zależności zewnętrzne programu Maven są opisane w pliku pom xml, podobnie jak inne zależności. Parametry wymagane do zdefiniowania zależności zewnętrznych to groupid, artifactId, zakres ustawiony na system i ścieżkę systemową zgodnie z lokalizacją projektu (względna ścieżka dostępu).
P # 27) Co oznacza Mojo w terminologii Mavena?
Odpowiedź: Mojo jest określane jako Maven zwykły stary obiekt Java . Mojo jest w zasadzie wykonywalnym celem, aby zwiększyć funkcje Mavena. Wtyczka to dystrybucja jednego lub wielu połączonych MOJO.
P # 28) Jakie jest zadanie elementu wykluczenia w Maven?
Odpowiedź: Aby uniknąć wszelkich zależności, element wykluczający jest używany w Maven.
P # 29) Dlaczego zaleca się przechowywanie zewnętrznych zależności w lokalnym repozytorium, a nie w zdalnym repozytorium w Maven?
Odpowiedź: Zaleca się pozostawienie zależności zewnętrznych w repozytorium lokalnym zamiast zdalnym w Maven, ponieważ repozytorium lokalne zajmuje mniej miejsca, jest łatwo dostępne i nie ma potrzeby zajmowania się wersjonowaniem plików jar.
Q # 30) Jak przeprowadzić wymuszoną aktualizację w Maven?
Odpowiedź: Wymuszoną aktualizację w Maven można wykonać za pomocą następujących poleceń:
mvn clean install –U
-U służy do wymuszania aktualizacji Mavena. Jednak zależności, które są oparte na wydaniu, nie mogą być wykonywane w ten sposób.
P # 31) Wyjaśnij błąd „Nie możesz mieć dwóch wykonań wtyczki z tymi samymi (lub brakującymi) elementami” w Maven.
Odpowiedź: Ten komunikat o błędzie pojawia się w sytuacjach, gdy uruchomiliśmy jedną wtyczkę więcej niż jeden raz z tym samym identyfikatorem. Musimy podać unikalny identyfikator dla każdej realizacji.
Wniosek
Jesteśmy pewni, że większość Twoich wątpliwości związanych z pytaniami podczas rozmowy kwalifikacyjnej z Mavenem została już rozwiązana. Zbadaliśmy szeroki zakres pytań, które są często zadawane podczas wywiadów. Ćwicz i ucz się dobrze, a będziesz w stanie łatwo je przyswoić.
Mamy nadzieję, że spodobał Ci się cały zakres samouczków w tej ekskluzywnej serii Maven. Pracuj ciężko i życzę wszystkim sukcesów !!
=> Odwiedź tutaj, aby nauczyć się Mavena od podstaw.
rekomendowane lektury
- Co to jest Maven - samouczek Maven dla początkujących
- Konfigurowanie Mavena za pomocą Eclipse Java IDE
- Integracja Maven z TestNg przy użyciu wtyczki Maven Surefire
- Maven With Jenkins & Maven Dokumentacja projektów
- ETL Testing Interview Pytania i odpowiedzi
- 35 najczęściej zadawanych pytań i odpowiedzi podczas wywiadów z Struts
- 31 najpopularniejszych pytań i odpowiedzi do wywiadów Agile
- Pytania i odpowiedzi do wywiadu