Vinnaren i pepparkakshustävlingen!
2020-08-31, 23:25
  #1
Medlem
Jag har tidigare sysslat med Java och när jag gjort en körbar fil har jag valt export i Eclipse och valt runneble JAR.

Har nu ett projekt med Maven. Beroendena till andra JAR-filer funkar fint. Dock ska man även kunna göra en deploy etc likt ovan. Hur skiljer det sig? Vad bör jag använda?

Som sagt vill jag bara ha en körbar jar med de beroenden som behövs.
Citera
2020-09-01, 06:51
  #2
Moderator
Protons avatar
Citat:
Ursprungligen postat av _x3m_
Jag har tidigare sysslat med Java och när jag gjort en körbar fil har jag valt export i Eclipse och valt runneble JAR.

Har nu ett projekt med Maven. Beroendena till andra JAR-filer funkar fint. Dock ska man även kunna göra en deploy etc likt ovan. Hur skiljer det sig? Vad bör jag använda?

Som sagt vill jag bara ha en körbar jar med de beroenden som behövs.
Hjälper https://www.baeldung.com/executable-jar-with-maven tro?
Citera
2020-09-02, 14:00
  #3
Medlem
Borde väl gå att lösa genom vanlig mvn package och att ha med en manifestfil som pekar ut main-class?
Citera
2020-09-02, 23:02
  #4
Medlem
Frågan är inte hur jag gör det med Maven utan snarare varför? Enda fördelen jag hittat är att man kan göra det utanför sin IDE. Ex om jag skapar en körbar JAR genom File --> Export i Eclipse, kommer den skilja sig mot om jag skapar en körbar JAR genom Maven? Eller spelar det ingen roll?
Citera
2020-09-03, 07:21
  #5
Moderator
Protons avatar
Citat:
Ursprungligen postat av _x3m_
Frågan är inte hur jag gör det med Maven utan snarare varför? Enda fördelen jag hittat är att man kan göra det utanför sin IDE. Ex om jag skapar en körbar JAR genom File --> Export i Eclipse, kommer den skilja sig mot om jag skapar en körbar JAR genom Maven? Eller spelar det ingen roll?
För vanliga hobbyprogrammeraren spelar det troligen inte speciellt stor roll, där kan du exportera från eclipse och sen är det klart.

För de som jobbar med maven som ett byggverktyg, till exempel när det är fler utvecklare inblandade och man har en byggserver som sköter om byggen, test och paketering blir det däremot betydligt svårare för denna att "exportera nåt ur eclipse" och då vet man ju inte ens om byggservern har eclipse installerat, mer troligt är att den har java, en passande kompilator och maven installerat.

I de fallen lär man ju bygga sina JAR-filer med maven.
Citera
2020-09-03, 11:09
  #6
Medlem
En stor anledning till att göra det via maven eller andra verktyg är automation och att bygget ska bli exakt lika varje gång och att ha full kontroll på alla variabler. Sen vill man kanske att filer ska hämtas från andra källor eller byggas separat m.m. Sen ska filerna flyttas till testmiljö och testerna körs osv. Går testerna igenom så ska fler saker hända...

Använder man ett GUI där man ska klicka och ställa in saker för att skapa jar-filer så kan saker lätt ändras eller att man råkar trycka lite annorlunda eller att något ändrats i byggmiljön som man inte tänkt på. Man kanske råkar glömma hämta hem den där uppdaterade filen från en extern tjänst. Sen ska man göra alla steg efteråt innan man kan produktionssätta ditt bygge. Man gör det kanske en gång manuellt och sen vill man automatisera allt.

Tipset är att gör det automatiserat via något typ av skript eller byggserver. Ha som vana att även dina hobbyprojekt använder vettiga processer och har en hög nivå.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback