Gå til innhold

Sende epost uten ekstra API?


Anbefalte innlegg

Jeg ønsker å sende en epost uten en ekstra jar fil. Jeg har tidligere prøvd JavaMail, men den klarer ikke å finne klassene. Det hjalp ikke å legge til jar filen i en "lib" mappe som jeg opprettet, tror det har noe med at jeg eksporterer som JAR file og ikke Runnable JAR file. Prøvde også på noe classpath og classloader greier, men det fungerte svært dårlig.

 

Er det noen som vet om det er mulig å sende epost uten å importere ekstra filer?

Lenke til kommentar
Videoannonse
Annonse

Når du kommer med en så dårlig beskrivelse av problemet ditt, så ikke vent med noen seriøse forsøk på hjelp.

 

Du forteller jo ikke hvordan ting er satt opp, så her har vi jo null og niks å gå på.

 

"Prøvde også på noe classpath og classloader greier, men det fungerte svært dårlig."

 

Hva prøvde du, og hva er svært dårlig?

Jeg vet det der sier dere fint lite, men jeg ønsker ikke lengre å gjøre det på den måten. Har søkt mye rundt på Google, fant ihvertfall ordentlige treff. Denne jar filen jeg lager er ikke en egen applikasjon, det er en plugin til en applikasjon som ikke skal modifiseres. Dette må altså gjøres på en annen måte, det er derfor jeg ikke får det til. Jeg forstår hvordan man gjør det dersom man skal importere JavaMail til en Runnable JAR file.

Lenke til kommentar

Hva forventer du egentlig at folk skal svare på dette? Du gir ingen informasjon om hva du har prøvd, hvilke feilmeldinger du har fått osv. Meningsløst. 

 

Systemet du holder på med, omtalt som "den", har en classloader, eller flere, som laster klasser langs en classpath. Du må få java-mail-jar'en inn på classpath til loaderen som laster pluginen din. Siden ingen andre enn deg vet verken hvordan "den" er skrudd sammen eller hva du har prøvd fra før av med "classpath og greier" er det heller ingen som kan hjelpe deg med det. Ikke engang hvaslags verktøy du bruker for å bygge jar-fila di gidder du opplyse om. Det eneste jeg kan fortelle deg er egentlig at det ikke er noen automatikk i at "den" begynner å kikke etter jar-filer i mapper du oppretter med navn "lib". I høyden kan du håpe at ting oppdages dersom du legger det i mapper sammen med andre jar-filer for systemet. Disse heter ofte "lib", men de opprettes gjerne når systemet installeres.

 

Har du prøvd å gjøre slik det står i bruksanvisningen til java: http://docs.oracle.com/javase/tutorial/deployment/jar/downman.html ?

 

Det er flere forslag her; http://stackoverflow.com/questions/183292/classpath-including-jar-within-a-jarselv om det du lurer på egentlig ikke er å inkludere en jar i en annen jar. Dersom du bruker metoden fra linken til oracle er det nok at din jar og mail-jar'en ligger i samme mappe, såvidt jeg forstår.

 

Du kan eventuelt bruke apache shade-plugin eller assembly-plugin (maven) til å pakke ut alle klassene i mailjar-filen og få dem inkludert som separate class-filer i din jar-fil. Det er litt grisete, men kan virke.

 

Edit: Som en siste utvei kan du kompilere kildekoden til javamail sammen med din egen kildekode og pakke alt i samme jar. JavaMail 1.5.5 source code

Endret av quantum
Lenke til kommentar

Ga opp. Jar filen min blir kjørt av en Java applikasjon som også ligger i en annen mappe, det ser ikke ut som det er så mange på Internett som har gjort akkurat dette. Prøvde også å legge til JavaMail kildekoden inn, men det endte opp med at jeg fikk drøyt antall med feilmeldinger. Uansett, takk for hjelpen. Kanskje jeg ser videre på det senere.

Lenke til kommentar

Ga opp. 

 

Vel, når det er et alternativ, er det noen ganger ikke så dumt å gjøre akkurat dét, og heller bruke ressursene på å kode noe man faktisk MÅ ha ferdig isteden. Must-have vs. nice-to-have. Mange som går i ball der ... og da blir det fort dyrt.

 

Fortsatt med forbehold om at vi ikke aner så mye om hverken hva "det" eller "den" er for noe; Det er nok lite sannsynlig at du har funnet på noe såpass sært at ikke andre har prøvd det før deg. Linken til stackoverflow inneholdt flere forslag til hvordan lignende problem kan løses, men ditt problem er altså så uvanlig at ingen av de foreslåtte løsningene var i nærheten av å være relevante? Stackoverflow har også en fin funksjon som lister opp lignende problemer, slik at hvis det første svaret ikke var spot-on er det lett å finne lignende.

 

På generell basis er det slik at veldig mye javakode pakkes som jar-fil og kjører nettopp som "plugins" i en applikasjon (nærmere bestemt appserver) og videre har avhengigheter til andre jar-filer.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...