Чи можливо видалити файли JAR зі списку програм у Spotlight?


8

Коли я шукаю програми, що використовують Spotlight, головними записами часто є файли JAR. Це дратує. Чи можна змінити прожектор, щоб файли JAR не вважалися додатками?


Я так і не дізнався, як це зробити. Однак я почав використовувати Альфреда замість прожектора (Альфред використовує індекс Spotlight). Альфред фільтрує файли JAR. LaunchBar - це конкурент, який робить те саме.
toolbear74

Відповіді:


8

Я хотів би зробити те саме, але я думаю, що відповідь - це "неможливо" або, принаймні, "було б ризикувати".

Ось що я відкрив досі.

Пов’язати файли JAR з якоюсь іншою програмою?

Я почав з того, що Spotlight підводить до висновку, що файли JAR є добрими: програма, оскільки файли JAR за замовчуванням асоціюються з Jar Launcher.app. Можливо, якщо ми зможемо зняти цю асоціацію, тоді Spotlight припинить індексувати файли JAR як додатки.

Це можна зробити стандартним способом у Finder. Перегляньте файл JAR у Finder, перегляньте інформацію, виберіть іншу програму під «Відкрити за допомогою», натисніть «Змінити все». Я спробував це і не змінив результатів Spotlight, проте не намагався відновити індекс Spotlight.

Мені це не подобається, тому що я не хочу, щоб утиліта Archive Utility була пов’язана з файлами JAR, а також у мене немає іншого додатка, який я краще асоціюю. Це привело мене до ...

Видалити зв’язок для файлів JAR з Jar Launcher?

Ця стаття має на меті розповісти про те, як вилучити асоціацію з файлами . Це лише частково правильно. Це працює для видалення асоціації, яку ви раніше додавали вручну. Виявляється, це не корисно для видалення асоціації, яка надходить із системи. Я спробував додаток, на який посилається, [RCDefaultApp] [], про який йдеться у статті, може відключити будь-яку асоціацію. Виявляється, додаток просто використовує хитру / вирішення. Він "відключає" асоціації файлів, створюючи нову асоціацію для фіктивного додатку, а не видаляючи фактичну асоціацію. Це не відрізняється від створення власного додатка "нічого робити" та асоціювання його з файлами .jar.

  • RCDefaultApp пов'язано, є ця відповідь на питання, де Mac OS X зберігає файлові асоціації . Відповідь з найвищою оцінкою є лише частково правильною. За замовчуванням, на яке він посилається, є вашими власними доповненнями "на користувача" або переопрацьовані системні параметри за замовчуванням. Знову ж таки, найбільше ви могли б зробити альтернативну асоціацію.

Де Jar Launcher.app пов'язаний з файлами JAR?

Деякі з цих статей посилаються на lsregisterутиліту командного рядка (частина способів відновлення асоціацій Launch Services). Виконати це:

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -dump

І ви отримаєте велику кількість конфігурацій Launch Services. Включаючи ці відповідні частини:

bundle  id:            48
    path:          /System/Library/CoreServices/CoreTypes.bundle
    name:          CoreTypes
    identifier:    com.apple.coretypes (0x800000ff)
    ...
    --------------------------------------------------------
    type    id:            2224
        uti:           com.sun.java-archive
        description:   Java archive
        flags:         exported  active  core  apple-internal  trusted  
        icon:          
        conforms to:   public.zip-archive, public.executable
        tags:          .jar, application/java-archive
...
--------------------------------------------------------------------------------
bundle  id:            21264
    path:          /System/Library/CoreServices/Jar Launcher.app
    name:          Jar Launcher
    ...
    library items:
    ...
    --------------------------------------------------------
    claim   id:            25284
        name:          Java JAR file
        rank:          Default
        roles:         Viewer  
        flags:         apple-default  apple-internal  relative-icon-path  
        icon:          Contents/Resources/JAR.icns
        bindings:      com.sun.java-archive, .jar

Що для мене говорить кілька речей:

  • Асоціація за замовчуванням Jar Launcher.app походить від / System / Library / CoreServices / Jar Launcher.app, на відміну від деяких системних файлів-плістів чи подібних. Там може виявитися мавпою, щоб порушити асоціацію. Мене б турбує, що це може скасувати будь-яке оновлення програмного забезпечення, яке оновлює Jar Launcher
  • Незалежно від Jar Launcher, трохи вище conforms to: public.zip-archive, public.executable змушує мене повірити, що я помилявся, коли асоціація Jar Launcher має щось спільне з тим, як Spotlight індексує файли JAR. Я інтерпретую висновок, що означає "файли JAR - це основний тип, який вважається архівами та програмами"

Мені дуже незручно спілкуватися з /System/Library/CoreServices/CoreTypes.bundle, але, здається, саме для цього потрібно змінити тип "архіву Java", видаливши "public.executable" з "відповідає на". Я б вклав свої гроші, що саме так використовує Spotlight, коли індексує файли JAR і розглядає їх як вид: додаток.

Як розробник Java, ви знаєте, що не всі файли JAR - це програми. Більш складний індексатор може вивчити маніфест всередині JAR. Але це лише виправить Spotlight. Можливо, це помилка OS X, що Finder розглядає всі файли JAR як програми, що дозволяє командувати ними і намагатися запустити їх через Jar Launcher. Не знаючи більше про Launch Services, це здається обмеженням механізму, орієнтованого на розширення файлів тут. Бампер.


вибачте за навмисне розірвані посилання. Мій низький представник та спам-фільтр змовляються, щоб запобігти багатій відповіді. Якщо хтось із високим представником може це виправити, це було б добре. Інакше я сам це виправлю, коли стану більш авторитетним.
toolbear74

4

Файли Jar часто надходять із скороченого набору каталогів. У моєму випадку більшість jar файлів було у "/ Applications / Eclipse / plugins". Отже, у розділі Системні налаштування> Прожектор> Конфіденційність я щойно перешкодив Spotlight шукати саме в цьому місці. Зараз це працює як шарм :)


0

Я думаю, ви повинні відфільтрувати пошук у центрі уваги.

Налаштування системи >> Прожектор, в результаті пошуку, крапка позначення "Застосування". сподіваюся, що це працює.

Я люблю порадити використовувати поле швидкого пошуку Google . це дозволяє шукати дані на комп’ютері та в Інтернеті. Я думаю, що це потужніше, ніж прожектор.


Згідно з моїм особистим досвідом, ця порада не спрацює, якщо банки будуть видно як звичайні файли jar у Finder. Однак завжди можна перетягнути цілі папки з Finder на вкладку «Конфіденційність» в межах налаштувань Spotlight. Папки, перелічені в цій вкладці, не включаються в індексацію.
Уве Хонекамп

Я хочу, щоб програми відображалися, я просто не хочу, щоб файли jar відображалися як програми. Як розробник Java, у мене в системі так багато файлів jar, що вони майже завжди є першим результатом.
Джей Страмель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.