Jak dodać lokalne pliki jar do projektu Maven?

Jak dodać lokalne pliki jar (nie będące jeszcze częścią repozytorium Maven) bezpośrednio do źródeł bibliotecznych mojego projektu?

Author: MozenRath, 2011-02-10

27 answers

Zainstaluj JAR w lokalnym repozytorium Maven w następujący sposób:

mvn install:install-file
   -Dfile=<path-to-file>
   -DgroupId=<group-id>
   -DartifactId=<artifact-id>
   -Dversion=<version>
   -Dpackaging=<packaging>
   -DgeneratePom=true

Gdzie każdy odnosi się do:

: ścieżka do pliku do załadowania np. c:\kaptcha-2.3.jar

: grupa, pod którą plik powinien być zarejestrowany, np.google.kod

: Nazwa artefaktu dla pliku np.]}

: Wersja pliku np. g - > 2.3

: opakowanie pliku np. -> jar

Odniesienie

 452
Author: user373455,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-31 18:11:51

Możesz dodawać lokalne zależności bezpośrednio (jak wspomniano w build maven project with propriatory libraries included ) w następujący sposób:

<dependency>
    <groupId>com.sample</groupId>
    <artifactId>sample</artifactId>
    <version>1.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/src/main/resources/yourJar.jar</systemPath>
</dependency>
 1071
Author: Alireza Fattahi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-24 07:14:01

Po Pierwsze chciałbym przypisać tę odpowiedź anonimowemu użytkownikowi stackoverflow - jestem prawie pewien, że widziałem podobną odpowiedź tutaj wcześniej - ale teraz nie mogę jej znaleźć.

Najlepszą opcją posiadania lokalnych plików jar jako zależności jest utworzenie lokalnego repozytorium maven. Takie repo to nic innego jak odpowiednia struktura katalogów z plikami pom.

Na moim przykładzie: Mam master project na ${master_project} miejscu i subroject1 jest na ${master_project}/${subproject1}

W takim razie tworzę mvn repozytorium w: ${master_project}/local-maven-repo

W pliku pom w podproject1 znajduje się ${master_project}/${subproject1}/pom.xml należy określić repozytorium, które przyjmowałoby ścieżkę pliku jako parametr url:

<repositories>
    <repository>
        <id>local-maven-repo</id>
        <url>file:///${project.parent.basedir}/local-maven-repo</url>
    </repository>
</repositories>

Zależność może być określona tak jak dla każdego innego repozytorium. Dzięki temu Twoje repozytorium pom jest niezależne. Na przykład, gdy pożądany jar jest dostępny w Maven central, wystarczy usunąć go z lokalnego repo i zostanie pobrany z domyślnego repo.

    <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.servicebinder</artifactId>
        <version>0.9.0-SNAPSHOT</version>
    </dependency>

Ostatnią, ale nie najmniej ważną rzeczą do zrobienia jest dodanie pliku jar do lokalne repozytorium używając przełącznika-DlocalRepositoryPath jak tutaj:

mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file  \
    -Dfile=/some/path/on/my/local/filesystem/felix/servicebinder/target/org.apache.felix.servicebinder-0.9.0-SNAPSHOT.jar \
    -DgroupId=org.apache.felix -DartifactId=org.apache.felix.servicebinder \
    -Dversion=0.9.0-SNAPSHOT -Dpackaging=jar \
    -DlocalRepositoryPath=${master_project}/local-maven-repo

Onece Jar jest zainstalowany taki plik mvn repo może być przypisany do repozytorium kodu i cała konfiguracja jest niezależna od systemu. (przykład pracy w github )

Zgadzam się, że posiadanie Jar ' ów zaangażowanych w repo kodu źródłowego nie jest dobrą praktyką, ale w prawdziwym życiu szybkie i brudne rozwiązanie czasami jest lepsze niż full blown Nexus repo, aby hostować jeden jar, którego nie możesz opublikować.

 83
Author: JJ Roman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-27 19:19:33

Utwórz nowy folder, powiedzmy local-maven-repo w katalogu głównym Twojego projektu Maven.

Po prostu dodaj lokalny repo w swoim {[3] } z twojego pom.xml:

<repositories>
    <repository>
        <id>local-maven-repo</id>
        <url>file:///${project.basedir}/local-maven-repo</url>
    </repository>
</repositories>

Następnie dla każdego zewnętrznego Jaru, który chcesz zainstalować, przejdź do katalogu głównego projektu i wykonaj:

mvn deploy:deploy-file -DgroupId=[GROUP] -DartifactId=[ARTIFACT] -Dversion=[VERS] -Durl=file:./local-maven-repo/ -DrepositoryId=local-maven-repo -DupdateReleaseInfo=true -Dfile=[FILE_PATH]
 77
Author: Anthony O.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-21 04:54:09
<dependency>
    <groupId>group id name</groupId>
    <artifactId>artifact name</artifactId>
    <version>version number</version>
    <scope>system</scope>
    <systemPath>jar location</systemPath>
</dependency>
 24
Author: Satish Karuturi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 20:16:32

Chciałbym takie rozwiązanie-użyj maven-install-plugin w pliku pom:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-install-plugin</artifactId>
            <version>2.5.2</version>
            <executions>
                <execution>
                    <phase>initialize</phase>
                    <goals>
                        <goal>install-file</goal>
                    </goals>
                    <configuration>
                        <file>lib/yourJar.jar</file>
                        <groupId>com.somegroup.id</groupId>
                        <artifactId>artefact-id</artifactId>
                        <version>x.y.z</version>
                        <packaging>jar</packaging>
                    </configuration>
                </execution>
            </executions>
        </plugin>

W tym przypadku można wykonać mvn initialize i jar zostanie zainstalowany w lokalnym Maven repo. Teraz ten jar jest dostępny podczas każdego kroku Mavena na tym komputerze (nie zapomnij dołączyć tej zależności, jak każda inna zależność Mavena w pom z tagiem <dependency></dependency>). Możliwe jest również Związanie jar install nie do initialize kroku, ale dowolnego innego kroku, który lubisz.

 21
Author: sphinks,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-12 21:58:10

Tak, możesz mieć, ale to nie jest dobry pomysł.

Zamiast zainstalować wszystkie te słoiki do Maven repos

Zobacz Też

 14
Author: Jigar Joshi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:47:36

Jednym ze sposobów jest przesłanie go do własnego menedżera repozytoriów Maven (takiego jak Nexus). Dobrą praktyką jest posiadanie własnego menedżera repozytoriów.

Innym miłym sposobem, jaki ostatnio widziałem, jest włączenie wtyczki Maven Install w cyklu życia kompilacji: deklarujesz w POM, aby zainstalować pliki w lokalnym repozytorium. To trochę, ale małe koszty i nie wymaga ręcznego kroku.

Http://maven.apache.org/plugins/maven-install-plugin/install-file-mojo.html

 9
Author: Puce,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-30 04:40:50

Dodaj własny lokalny JAR w pliku POM i użyj go w maven build.

mvn install:install-file -Dfile=path-to-jar -DgroupId=owngroupid -DartifactId=ownartifactid -Dversion=ownversion -Dpackaging=jar

Na przykład:

mvn install:install-file -Dfile=path-to-jar -DgroupId=com.decompiler -DartifactId=jd-core-java -Dversion=1.2 -Dpackaging=jar

Następnie dodaj go do POM TAK:

Tutaj wpisz opis obrazka

 8
Author: Tummidi Phani Kumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-05 06:44:52

Oczywiście możesz dodać słoiki do tego folderu. Ale może to nie to, co chcesz osiągnąć...

Jeśli potrzebujesz tych słoików do kompilacji, sprawdź to powiązane pytanie: Czy Mogę dodać słoiki do Maven 2 build classpath bez ich instalowania?

Również, zanim ktoś to zasugeruje, nie używaj zakresu systemu.

 7
Author: Cephalopod,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:10:54

Wiersz poleceń:

mvn install:install-file -Dfile=c:\kaptcha-{version}.jar -DgroupId=com.google.code
-DartifactId=kaptcha -Dversion={version} -Dpackaging=jar
 6
Author: Hassani,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-30 15:04:12

Preferowanym sposobem jest utworzenie własnego zdalnego repozytorium.

Zobacz TUTAJ Aby uzyskać szczegółowe informacje o tym, jak to zrobić. Zobacz sekcję " przesyłanie do zdalnego repozytorium ".

 3
Author: Simeon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-02-10 10:43:29

Innym interesującym przypadkiem jest, gdy chcesz mieć w swoim projekcie prywatne słoiki Mavena. Możesz zachować możliwości Mavena do rozwiązywania zależności przechodnich. Rozwiązanie jest dość proste.

  1. Utwórz folder libs w swoim projekcie
  2. Dodaj następujące wiersze w pom.plik xml

    <properties><local.repository.folder>${pom.basedir}/libs/</local.repository.folder>
    </properties>
    
    <repositories>
       <repository>
            <id>local-maven-repository</id>
            <url>file://${local.repository.folder}</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
       </repository>
    </repositories>
    
  3. Otwórz .folder m2 / repozytorium i skopiuj strukturę katalogów projektu, który chcesz zaimportować do folderu libs .

Np. Załóżmy, że chcesz zaimportować zależność

<dependency>
    <groupId>com.mycompany.myproject</groupId>
    <artifactId>myproject</artifactId>
    <version>1.2.3</version>
</dependency>

Po prostu idź .m2 / repozytorium i zobaczysz następujący folder

Com / mycompany / myproject/1.2.3

Skopiuj wszystko z folderu libs (ponownie, łącznie z folderami pod .m2 / repozytorium ) i gotowe.

 3
Author: JeanValjean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-03 19:18:04

Naprawdę szybkim i brudnym sposobem jest wskazanie lokalnego pliku:

<dependency>
      <groupId>sample</groupId>  
       <artifactId>com.sample</artifactId>  
       <version>1.0</version> 
      <scope>system</scope>
      <systemPath>C:\DEV\myfunnylib\yourJar.jar</systemPath>
</dependency>

Jednak będzie to działać tylko na twoim komputerze (oczywiście), ponieważ udostępnianie go zwykle ma sens, aby użyć odpowiedniego archiwum m2 (nexus/artifactory) lub jeśli nie masz żadnego z nich lub nie chcesz skonfigurować lokalnego archiwum Maven structured i skonfigurować "repozytorium" w Twoim pom: local:

<repositories>
    <repository>
        <id>my-local-repo</id>
        <url>file://C:/DEV//mymvnrepo</url>
    </repository>
</repositories>

Remote:

<repositories>
    <repository>
        <id>my-remote-repo</id>
        <url>http://192.168.0.1/whatever/mavenserver/youwant/repo</url>
    </repository>
</repositories>
 3
Author: fl0w,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-02 06:47:03

Zobacz też..

<scope>compile</scope>

Maven Dependencies . Jest to domyślne, ale znalazłem w niektórych przypadkach jawnie ustawiając ten zakres również Maven, aby znaleźć lokalne biblioteki w lokalnym repozytorium.

 2
Author: kervin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-22 04:19:57

Chcę udostępnić kod, w którym możesz przesłać folder pełen słoików. Jest to przydatne, gdy dostawca nie ma publicznego repozytorium i trzeba ręcznie dodać wiele bibliotek. Postanowiłem zbudować ... bat zamiast wywoływać bezpośrednio do Mavena, ponieważ może być bez błędów pamięci. Został przygotowany dla środowiska windows, ale łatwo jest go dostosować do systemu operacyjnego linux:

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
import java.util.jar.Manifest;

public class CreateMavenRepoApp {

    private static final String OCB_PLUGIN_FOLDER = "C://your_folder_with_jars";

    public static void main(String[] args) throws IOException {

    File directory = new File();
    //get all the files from a directory
    PrintWriter writer = new PrintWriter("update_repo_maven.bat", "UTF-8");
    writer.println("rem "+ new Date());  
    File[] fList = directory.listFiles();
    for (File file : fList){
        if (file.isFile()){               
        String absolutePath = file.getAbsolutePath() ;
        Manifest  m = new JarFile(absolutePath).getManifest();
        Attributes attributes = m.getMainAttributes();
        String symbolicName = attributes.getValue("Bundle-SymbolicName");

        if(symbolicName!=null &&symbolicName.contains("com.yourCompany.yourProject")) {
            String[] parts =symbolicName.split("\\.");
            String artifactId = parts[parts.length-1];
            String groupId = symbolicName.substring(0,symbolicName.length()-artifactId.length()-1);
            String version = attributes.getValue("Bundle-Version");
            String mavenLine= "call mvn org.apache.maven.plugins:maven-install-plugin:2.5.1:install-file -Dfile="+ absolutePath+" -DgroupId="+ groupId+" -DartifactId="+ artifactId+" -Dversion="+ version+" -Dpackaging=jar ";
            writer.println(mavenLine);          
        }

        }
    }
    writer.close();
    }

}

Po uruchomieniu tej głównej z dowolnego IDE, Uruchom update_repo_maven.bat.

 2
Author: Luis Muzikant,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-11 21:05:09

Jest to krótka składnia dla nowszych wersji:

mvn install:install-file -Dfile=<path-to-file>

Działa, gdy JAR został zbudowany przez Apache Maven - najczęstszy przypadek. Wtedy będzie zawierał pom.xml w podfolderze katalogu META-INF, który będzie domyślnie odczytywany.

Źródło: http://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

 2
Author: joro,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-04 16:25:00

Zauważ, że używanie lokalnego repo niekoniecznie jest dobrym pomysłem. Jeśli ten projekt zostanie udostępniony innym, wszyscy inni będą mieli problemy i pytania, gdy nie zadziała,a jar nie będzie dostępny nawet w systemie kontroli źródła!

Chociaż współdzielony repo jest najlepszą odpowiedzią, jeśli nie możesz tego zrobić z jakiegoś powodu, osadzanie jar jest lepsze niż lokalny repo. Tylko lokalna zawartość repo może powodować wiele problemów, zwłaszcza w czasie.

 1
Author: Frank,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-26 06:35:06

W lokalnym repozytorium możesz zainstalować swój jar, wydając polecenia

 mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

Skorzystaj z tego użytecznego linku , aby zrobić to samo ze strony mkyoung. Możesz również sprawdzić maven guide dla tego samego

 1
Author: bpjoshi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-04 18:09:03

Z jakiegoś powodu, w aplikacji internetowej, do której daję utrzymanie, ani Rozwiązanie Alirezy Fattahi , anirozwiązanie JJ Romana nie działało poprawnie. W obu przypadkach kompilacja idzie dobrze( widzi słoik), ale opakowanie nie zawiera słoika wewnątrz wojny.

Jedyny sposób, w jaki udało mi się to zrobić, to umieścić słoik na /src/main/webapp/WEB-INF/lib/, a następnie połączyć go z rozwiązaniem Fattahisa lub Romana.
 1
Author: Haroldo_OK,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-14 17:26:03

TA ODPOWIEDŹ JEST TYLKO DLA UŻYTKOWNIKÓW ECLIPSE:

Jeśli używasz Eclipse, umieść jar w lib/, kliknij prawym przyciskiem myszy na nazwie jar i kliknij "Dodaj do budowy ścieżki". Eclipse utworzy "biblioteki referencyjne" i umieści jar dla ciebie

To rozwiązało import jar od razu w Programie dla mnie

 0
Author: Anandkumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-28 18:31:43

Aby zainstalować jar innej firmy, należy wywołać komendę jak poniżej

mvn install:install-file -DgroupId= -DartifactId= -Dversion= -Dpackaging=jar -Dfile=path
 0
Author: Ravikiran Reddy Kotapati,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-15 08:23:25

Miałem ten sam błąd dla zestawu zależności w moim pom.XML okazuje się, że wersje zależności nie zostały określone w pom.xml i został wymieniony w repozytorium nadrzędnym. Z jakiegoś powodu szczegóły wersji nie były synchronizowane z tym repo. Dlatego ręcznie wprowadziłem wersje za pomocą tagu i działało jak urok. Trochę czasu potrzeba, aby sprawdzić wersje w rodzicu i określić tutaj. Ale można to zrobić tylko dla słoików, które pokazują błąd artifactid i to działa. Mam nadzieję, że to komuś pomoże.

 0
Author: Ranjan Rozario,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-21 09:39:01

Myślę, że lepszym rozwiązaniem tego problemu jest użycie maven-install-plugin do automatycznego instalowania plików w czasie instalacji. Tak ustawiłem go dla mojego projektu.

Najpierw dodaj ścieżkę (gdzie przechowujesz lokalny .słoje) jako własność.

<properties>
    <local.sdk>/path/to/jar</local.sdk>
</properties>

Następnie pod plugins Dodaj wtyczkę do instalacji jars podczas kompilacji.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-install-plugin</artifactId>
    <version>2.5.2</version>
    <executions>
        <execution>
            <id>1</id>
            <phase>initialize</phase>
            <goals>
                <goal>install-file</goal>
            </goals>
            <configuration>
                <groupId>com.local.jar</groupId> 
                <artifactId>appengine-api</artifactId>
                <version>1.0</version>
                <packaging>jar</packaging>
                <file>${local.sdk}/lib/impl/appengine-api.jar</file>
            </configuration>
        </execution>
        <execution>
            <id>appengine-api-stubs</id>
            <phase>initialize</phase>
            <goals>
                <goal>install-file</goal>
            </goals>
            <configuration>
                <groupId>com.local.jar</groupId>
                <artifactId>appengine-api-stubs</artifactId>
                <version>1.0</version>
                <packaging>jar</packaging>
                <file>${local.sdk}/lib/impl/appengine-api-stubs.jar</file>
            </configuration>
        </execution>
    </executions>
</plugin>

Wreszcie, w zależności, można dodać słoiki

<dependency>
    <groupId>com.local.jar</groupId>
    <artifactId>appengine-api</artifactId>
    <version>1.0</version>
</dependency>

<dependency>
    <groupId>com.local.jar</groupId>
    <artifactId>appengine-api-stubs</artifactId>
    <version>1.0</version>
    <scope>test</scope>
</dependency>

Konfigurując swój projekt w ten sposób, projekt będzie Kontynuuj budowanie, nawet jeśli przeniesiesz go na inny komputer (biorąc pod uwagę, że ma on wszystkie pliki jar w ścieżce określonej przez właściwość local.sdk).

Dla groupId użyj unikalnej nazwy, aby upewnić się, że nie ma konfliktów.

Teraz, gdy mvn install lub mvn test lokalne słoiki zostaną dodane automatycznie.

 0
Author: Sudara,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-10 22:24:40
  1. mvn install

Możesz napisać kod poniżej w wierszu poleceń lub jeśli używasz Eclipse built maven kliknij prawym przyciskiem myszy na project - > Run As - > run configurations... - >w lewym panelu kliknij prawym przyciskiem myszy na Maven Build -> nowa konfiguracja -> wpisz kod w katalogu głównym :${project_loc:NameOfYourProject} - >Run

mvn install:install-file
   -Dfile=<path-to-file>
   -DgroupId=<group-id>
   -DartifactId=<artifact-id>
   -Dversion=<version>
   -Dpackaging=<packaging>
   -DgeneratePom=true

Gdzie każdy odnosi się do:

: ścieżka do pliku do załadowania np. c:\kaptcha-2.3.jar

: grupa, pod którą plik powinien być zarejestrowany, np.google.kod

: Nazwa artefaktu dla pliku np.]}

: Wersja pliku np. g - > 2.3

: opakowanie pliku np. - > jar

2.Po zainstalowaniu wystarczy zadeklarować jar w pom.xml.

 <dependency>
      <groupId>com.google.code</groupId>
      <artifactId>kaptcha</artifactId>
      <version>2.3</version>
 </dependency>
 0
Author: Mazen Embaby,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-31 17:13:35

W Apache Maven 3.5.4 musiałem dodać podwójną notację. Bez podwójnego cytowania nie zadziałało.

Przykład: mvn install: install-file "- Dfile=lokalizacja do pliku jar""- DgroupId=group id ""- DartifactId=Artifact id ""- Dversion=version "" - Dpackaging=typ pakietu "

 0
Author: Kavindu Gayan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-05 10:54:22

Miałem ten sam problem z ojdbc6. Widziałem ten link, ale to nie działa. Polecenie było poprawne, ale potrzebowałem jeszcze jednego parametru,

Oto link: http://roufid.com/3-ways-to-add-local-jar-to-maven-project/

Oto przykład:

install:install-file -Dfile=C:\driversDB\ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar
 -1
Author: sdarks,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-21 17:57:52