Also, if you have a META-INF/MANIFEST.MF with a `Class-Path` entry, you
don't have a uber jar :-)

You have an old school executable jar with hardcoded classpath.


Joakim Erdfelt / joa...@webtide.com

On Wed, Mar 7, 2018 at 11:14 AM, Joakim Erdfelt <joa...@webtide.com> wrote:

> 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