Java [1242]

Zapisz się
Dodaj kartkę Dodaj bana
Powód wlepienia kartki
Wybierz wątek docelowy z listy lub wpisz jego ID
  • Lilianne E. Blaze

    Witam,
    Zalozmy ze mam lokalne repository, zdefiniowane x zdalnych, i chce wywalic z lokalnego wszystko co jest w danej chwili osiagalne ze zdalnych (czyli - upraszczajac - zostawic tylko to co kiedys z jakiegos powodu zostalo dodane recznie, etc).

    Da sie? Sa jakies narzedzia do tego? Wiem ze mozna do tego latwo napisac miniprogsa, ale wole nie wymyslac od nowa kola?

    Pozdrawiam, L
  • Anonim

    Może odpowiem trochę lamersko, być może czegoś tu nie rozumiem (Nie znam wogóle Maven-a) i fajnie jeśli ktoś mi to wytłumaczy jeśli napiszę jakieś fopa, ale jeśli chcesz wywalić coś z lokalnego repozytorium to nie mogłabyś po prostu tego
    >>"wszystko co jest w danej chwili osiagalne ze zdalnych"
    skasować z dysku?
  • Lilianne E. Blaze

    W skrocie - Maven sciaga i przechowuje wszystkie zaleznosci lokalnie ze zdalnych zbiorow. Ale czasem cos nie jest dostepne w formacie Mavena i wtedy trzeba to dopisac do lokalnego repository recznie. Z czasem robi sie z tego naprawde niezly bu^H^Hsmietnik (w tej chwili u mnie - 800 mb, 5500 plikow). Wiec miloby bylo miec opcje "usun wszystko co da sie odtworzyc", czyli z pominieciem tego "czasem recznie".
  • Koziołek [brat Javowiec]

    Niestety nie da się tego tak zrobić. W założeniu maven ma działać w ten sposób, by potrzebne biblioteki były dostępne w jednym miejscu i nie istniała konieczność ich każdorazowego ściągania.

    Rozwiązanie trochę na około. Załóż sobie konto na jakimś darmowym serwerze. Ustaw sobie tam strukturę repozytorium mavena i tam wrzucaj to co nie jest dostępne z głównych repo mavena. Na kompie lokalnym trzymasz wtedy wszystko, ale jak chcesz zaorać repozytorium to możesz to zrobić bez obawy o swoje ręcznie zainstalowane artefakty. Zostaną ściągnięte ze zdefiniowanego przez ciebie repozytorium sieciowego.
  • steelheart

    po co na jakims darmowym serwerze? spodnie przez głowe...
    repo na wlasne artefakty mozna zalozyc nawet na swoim kompie maven obsluguje 'zdalne' repo z file://

    wystarczy troche po RTFM'owac

    (oczywiscie mowimy o maven 2.x)
  • Lilianne E. Blaze

    > W założeniu maven ma działać w ten sposób, by potrzebne biblioteki były dostępne w jednym miejscu i nie istniała konieczność ich każdorazowego ściągania.

    > Rozwiązanie trochę na około.

    Scenariusz wcale nie jest taki bez sensu, przyklad:

    Sciagasz jakies open source, 5 mb archiwum. Po rozpakowaniu 50 mb source. Po skompilowaniu 500 mb w repo.

    Potem robisz malego patcha zeby dodac potrzebna Ci funkcjonalnosc, szefowstwo projektu odrzuca bo nie jest zgodne z jakas niesprecyzowana dlugoterminowa wizja, po czym okazuje sie ze projekt i tak ma X innych niedociagniec ktore Ci nie pasuja, wiec wywalasz wszystko w kaczke, szukasz alternatywy, a w repo zostaje Ci ~500 mega smieci ktorych prawdopodobnie juz nigdy nie uzyjesz. 500 mb to moze i nie jest problem, ale z mirroringiem near-realtime i backupami robi sie z tego 3 gb... czyli 1/3 pojemnosci wspolczesnego telefonu komorkowego; \ . Ok, whatever. Waste not, want not. Wazne ze sa smieci, a smieci sa zue.

    > po co na jakims darmowym serwerze?

    Tym bardziej ze mam wlasne porzadne?; \

    > wystarczy troche po RTFM'owac

    Sadzisz ze od czego zaczelam?; \

    Ok, poradzilam sobie po prostu czyszczac i sciagajac z backupu brakujace, okazalo sie ze jest tego tak malo (kilka) ze wystarczy wrzucic je do jednego katalogu ze skryptem z x razy install:install-file, nawet nie warto dla nich robic osobnego file: repo, wiec to nie jest problem. Ale nadal uwazam ze brak takiej opcji w Mavenie to nieporozumienie.
  • Koziołek [brat Javowiec]

    Trochę stary topic, ale ostatnio mam nowe "genialne" rozwiązanie. Wystarczy zainstalować Artifactory http://www.jfrog.org/products.php . Konfiguracja jest prosta. Działa na zasadzie mirrora dla repozytoriów zdalnych. Można zwoje artefakty wrzucać do lokalnego repo Artifactory i jak chcesz zaorać lokalne repo na dysku to i tak pozostaje kopia w Artifactory.