Don't forget to merge the META-INF/services/ files too.

Joakim Erdfelt / joa...@webtide.com

On Wed, Mar 7, 2018 at 11:11 AM, west suhanic <west.suha...@gmail.com>
wrote:

> Hello All:
>
> I am able to build an uber jar called x.jar via a makefile. The steps are:
>
> 1)Build a manifest file with the necessary classpaths specified. Here is
> one I auto generate. I have simply
> shortened it  for this example. The key bit is to have one space after the
> colon which terminates "Class-Path" and two
> spaces at the start of each classpath line. In the line "Main-Class:
> g.m.TheMain" there are two spaces between the
> colon and the letter g   .   Here is the manifest file, called
> manifest.mf,  which I use on a gentoo machine:
>
> Class-Path:
>   /home/b/jars/jetty/9.4.8.v20171121/jetty-continuation-
> 9.4.8.v20171121.jar
>   /home/b/jars/jetty/9.4.8.v20171121/jetty-server-9.4.8.v20171121.jar
>   /home/b/jars/jetty/9.4.8.v20171121/jetty-http-9.4.8.v20171121.jar
> Main-Class:  g.m.TheMain
>
> I auto generate this manifest file in the Makefile because my classpath
> has over twenty elements.
>
> The jar file statement for the executable jar is:
>
> jar cvfm x.jar ./manifest.mf -C g/m .
>
> Then to use the executable jar do:
>
> java -jar x.jar
>
> thanks,
>
> west suhanic
>
>
>
>
>
> On Tue, Mar 6, 2018 at 12:28 PM, Joakim Erdfelt <joa...@webtide.com>
> wrote:
>
>> Using makefile you'll have a lot of extra work to do with merging various
>> files for this executable jar (aka uber-jar).
>>
>> There are 2 example projects we maintain, but they use maven and the
>> various plugins that do the merging for us in a smart fashion.
>>
>> If you are working with ServletContextHandler, you can use a uber-jar.
>>
>> https://github.com/jetty-project/embedded-jetty-uber-jar
>>
>> This will merge everything that you use into a single executable jar for
>> yourself.
>>
>> If you are working with WebAppContext, you can use a live-war.
>>
>> https://github.com/jetty-project/embedded-jetty-live-war
>>
>> This produces a war file that, can itself, be executed (like an
>> executable jar).
>> This has the same merging concerns as above, but is structured
>> differently to allow the war file to operate safely.
>>
>>
>> Joakim Erdfelt / joa...@webtide.com
>>
>> On Tue, Mar 6, 2018 at 8:53 AM, west suhanic <west.suha...@gmail.com>
>> wrote:
>>
>>> Hello All:
>>>
>>> I have a fully functioning embedded jetty application.
>>> I would now like to package it in an executable jar file.
>>> I do not use maven or ant. It is built using a makefile.
>>> I have a manifest file containing the needed jar files etc.
>>> I can build the executable jar file. However the problem occurs
>>> when I run it. The application starts and I get no error messages
>>> but I cannot contact the embedded server via the command line or
>>> a web browser.
>>>
>>> I have gone over the documentation and it is not obvious if what I want
>>> to do
>>> is even possible. So I have a few questions:
>>>
>>> 0)Am I missing something in the documentation?
>>> 1)Is building an executable jar file without maven or ant possible?
>>> 2)If so, how? Do I need to add some code to my embedded server?
>>>
>>> thank you,
>>>
>>> west suhanic
>>>
>>> _______________________________________________
>>> jetty-users mailing list
>>> jetty-users@eclipse.org
>>> To change your delivery options, retrieve your password, or unsubscribe
>>> from this list, visit
>>> https://dev.eclipse.org/mailman/listinfo/jetty-users
>>>
>>
>>
>
_______________________________________________
jetty-users mailing list
jetty-users@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to