2010-02-24 10 views
5

Po pewnym wyszukiwania w Google i tutaj, ja nadal nie znalazłem żadnej odpowiedzi na następujące kwestie:Oczywisty vs formacie Właściwości

Czy istnieje powód, który manifestuje JAR nie tylko korzystają z formatu ogłoszenia?

Zgaduję, że to jest historyczne, ale byłoby miło wiedzieć, jak to się stało, że to była decyzja, aby nie używać formatu właściwości jawnie utworzonego lub czy format właściwości został opracowany po formacie manifestu?

Z tego, co widzę, nie było żadnego technicznego powodu, chociaż format manifestu wydaje się nieco bardziej czytelny.

Odpowiedz

2

Dobre pytanie. Mogę tylko spekulować.

Ale jeden ważny szczegół dotyczący implementacji Properties (chociaż niekoniecznie jest to specyfikacja formatu pliku) jest taki, że nie obsługuje wielu wartości z tym samym kluczem (które są potrzebne w przypadku wartości dla poszczególnych pozycji w manifeście) i do przechowywania i reprezentowania kolejności swoich wpisów.

+0

To są ważne rzeczy dla manifestów. Tak więc, chociaż stanowi to przyczynę wszelkiego rodzaju odchyleń od formatu właściwości, pozostaje pytanie, dlaczego podstawowy format nie był taki sam (w rzeczywistości, czy nie byłoby lepiej po prostu wprowadzić implementację "Właściwości"? bardziej ogólne?). –

+0

Jako że jestem nowy w StackOverflow, nie jestem pewien, jaka jest "standardowa procedura" akceptowania odpowiedzi. Zamierzam poczekać jeszcze dzień lub dwa i jeśli nie będzie więcej odpowiedzi, przyjmuję to - jest to najlepsze jak dotąd i wywołuje ciekawą różnicę między tymi dwoma formatami. –

0

To pewnie rzecz historyczna. Format manifestu jest bardziej restrykcyjny w odniesieniu do pewnych rzeczy, takich jak maksymalna długość linii. Zawiera również szereg reguł dotyczących podpisywania słoików, ale myślę, że te rzeczy zostały dodane później.

+0

Właśnie sprawdziłem zasady podpisywania i zasadniczo redukują one do komentarza @ Joachima, tj. Zezwalając na wiele wartości za pomocą tego samego klucza i zachowując nienaruszoną kolejność. Co do maksymalnej długości linii, dobry punkt! Ma 70 znaków (i według Wikipedii istnieją pewne problemy z interpretacją reguł pakowania). –

0

Należy również wziąć pod uwagę problem z bootstrapiem. Plik manifestu pierwszego wczytanego pliku JAR może nie zostać odczytany w ogóle przez kod Java ...

+0

Bez argumentów - dla spójności mogli zbudować swój bootstrap przy użyciu tej samej specyfikacji dla trwałości. – Newtopian

+0

Oczywiście, ale jest oczywiste, że java.util.Properties nie zawsze jest dostępny i może być używany przez cały czas. – EJP

Powiązane problemy