Java v8unpack

28.04.17

Разработка - Инструментарий разработчика

Альтернативная-opensource реализация распаковщика cf, epf & etc на Java.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
com.minimajack._v8.cf-0.0.1-SNAPSHOT-jar-with-dependencies.jar
.jar 2,93Mb
15 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

InDev

Основные отличия:

  • распаковывает данные сразу
  • работает в несколько потоков
  • не сохраняет заголовки файлов   уже сохраняет
  • пожирает память нещадно

Документация

По проекту:
Project documentation
Java-doc api: 
API-doc 

Сборка:

git clone https://github.com/MinimaJack/com.minimajack.v8.cf.reader.git
cd com.minimajack.v8.cf.reader
mvn clean compile assembly:single

Забирать из папки ./target/

Для сборки необходимо:

  • maven 3.+
  • JDK 1.8+

Запуск:

для распаковки:

unpack.bat test.epf ./unpacked/

или

java -jar com.minimajack.v8.cf.reader-0.0.1-SNAPSHOT-jar-with-dependencies.jar %file% %path%

для упаковки

pack.bat ./unpacked/ test.epf

java -jar com.minimajack.v8.cf.reader-0.0.1-SNAPSHOT-jar-with-dependencies.jar  %path% %file%

P.S. В первую очередь предназначается для обучения

04.06.2015 Причесал немного код. Выделил библиотеку отдельно, демо пример отдельно.

Исходники:

Библиотеки - https://github.com/MinimaJack/com.minimajack.v8.format

Демо пример, он же распаковщик - https://github.com/MinimaJack/com.minimajack.v8.cf.reader.git

10.06.2015 Обновил файл

26.06.2015 Обновил ссылки на библиотеки

20.04.2017 Демо пример переделан на fork/join pool

26.04.2017 Демо пример переделан, добавлена возможность кеширования файлов по дате модификации которая по умолчанию влючена. Что бы отключить необходимо третьим параметром передать стратегию NONCACHE

28.04.2017 Демо пример переделан с возможностью иерархического построения проекта, без изменения именований.

Вступайте в нашу телеграмм-группу Инфостарт

java v8unpack

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    218915    1198    413    

1059

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

14400 руб.

20.08.2024    44235    244    123    

226

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    27808    73    30    

101

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9500 руб.

17.05.2024    39632    143    57    

182

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    11034    17    7    

28

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    19651    76    39    

92

Инструментарий разработчика WEB-интеграция 1С v8.3 1C v8.2 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Инструмент для генерации OpenApi (Swagger) спецификаций на основании файлов конфигураций 1С. Это консольное и десктопное приложение на языке Rust с полноценным редактором кода, содержащим автозамену и подсвечивание ошибок для быстрого и безошибочного написания документирующего комментария.

18000 руб.

22.11.2024    2649    2    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ekaruk 5035 02.06.15 19:40 Сейчас в теме
Идея интересная.
Спасибо.
Давно искала повод покопаться в Java.
2. minimajack 81 02.06.15 19:53 Сейчас в теме
(1) ekaruk, идея то не новая, фактическая дата создания моего проекта 7 декабря 2014...ну и awa параллельно тоже запилил (https://github.com/awk-kazmin/JV8Unpack).
Программирование на Java - как глоток свежего воздуха.
ps Будут вопросы, задавайте - с удовольствием отвечу.
eugeniezheludkov; +1 Ответить
6. awa 2616 03.06.15 09:57 Сейчас в теме
(2)
ну и awa параллельно тоже запилил


Видимо, это просто опечатка. Но на всякий случай уточню, что это не мой проект, а Василия Казьмина http://infostart.ru/profile/44963/
7. minimajack 81 03.06.15 10:03 Сейчас в теме
(6) awa, да, просто опечатка
(5) nSpirit2, пока нет
3. DoctorRoza 03.06.15 09:10 Сейчас в теме
Ну что, началось! Java начинает паломничество на святую землю Инфостарт! :)

По ссылке error 404
4. minimajack 81 03.06.15 09:13 Сейчас в теме
5. nSpirit2 03.06.15 09:41 Сейчас в теме
А обратно запаковывать она умеет?
8. dmpas 419 03.06.15 10:57 Сейчас в теме
Пора открывать клуб V8Unpacker-ов ?
artbear; DrAku1a; Evil Beaver; kuntashov; +4 Ответить
9. nSpirit2 03.06.15 11:01 Сейчас в теме
(8) baton_pk, Лучше клуб запакеров начинайте основывать :)
(7) Ясно а в планах то есть ?
10. minimajack 81 03.06.15 11:19 Сейчас в теме
(8) baton_pk, не понял вопроса
(9) nSpirit2,
мне не хватило текущего функционала V8Unpack.
да собирать обратно планирую
11. detec 136 03.06.15 12:10 Сейчас в теме
Жаль, что интерфейс консольный. Можно было бы реализовать на javafx форму приложения.
12. minimajack 81 03.06.15 12:12 Сейчас в теме
(11) detec, данная разработка позиционируется как библиотека, а не как самостоятельное приложение. Это позволит использовать код как угодно.
13. ret-Phoenix 533 04.06.15 00:23 Сейчас в теме
Действительно, подобных проектов несколько штук, но вот еще ни один не дошел до уровня gcomp. Все выгружают просто "RAW", а хотелось бы получить в результате нормальные имена и разбор по каталогам. Тогда от подобных инструментов будет толк (вспоминаю fez, ADirks).

P.S. не удивлюсь, если есть уже решение, но в public не выложено.
14. minimajack 81 04.06.15 08:59 Сейчас в теме
(13) ret-Phoenix, (5) nSpirit2, так получается, что текущий функционал можно развивать по разному.
1. Нормальный разбор: нормальные имена, структура папок
2. Нормальную сборку - именно низкоуровневую, даем файлы -> получаем упакованный результат.
3. Полную разборку в папки и сборку - подобно xml выгрузки, загрузки

Для меня сейчас важнее 2 пункт, но хотелось бы узнать мнение других людей.
15. nSpirit2 04.06.15 09:32 Сейчас в теме
(14) не знаю как другим, но по моему возможность обратно собрать обратно должна обязательно присутствовать в таком проекте иначе его функциональность не будет использоваться в полной мере... Запаковка распаковка так и до альтернативного редактора кода не далеко :) В любом случае такая система решит много проблем с использованием VCS а это большой плюс :)
16. dmpas 419 04.06.15 09:39 Сейчас в теме
(14)
2. Нормальную сборку - именно низкоуровневую, даем файлы -> получаем упакованный результат.

ну, с этим долго возиться вряд ли придётся. тут поле уже пахано-перепахано.
а вот разбирать всё это дело в понятный формат - вот это действительно требует основательного погружения.
17. minimajack 81 04.06.15 09:45 Сейчас в теме
(16) baton_pk, без низкоуровневой сборки как то не функционально...ничего сложного нет, но руки не резиновые
опять же с форматом...что считать нормальным...какой он нормальный . Возможно использовать родной 1с-кий, возможно придумать что то свое...
18. Evil Beaver 8369 04.06.15 10:01 Сейчас в теме
(16) baton_pk, ну так V8Reader же от bambr1975! Там вам и unpack и парсер-распарсер во все поля.
http://infostart.ru/public/106310 Плюс, их совместный проект с awa - MetaRead, ссылку не помню.
artbear; awa; dmpas; +3 Ответить
19. dmpas 419 04.06.15 10:08 Сейчас в теме
(18) Evil Beaver,
V8Reader же от Вики Дорохиной

да, воистину сильнейшая разработка! всё никак повода не находится сесть и разобраться.

ссылку не помню

вот для того и нужен "клуб" :) чтоб не бегать по разным местам
20. minimajack 81 04.06.15 16:11 Сейчас в теме
Разделил код на библиотеку и демо-распаковщик.
(18) Evil Beaver, жаль MetaRead не нашел, описание метаданных ускорило бы разработку
21. eugeniezheludkov 45 05.06.15 08:22 Сейчас в теме
Извиняюсь за снобизм, но библиотека не будет полной без документации, а в репо я так её и не нашел. Нужно некое АПИ, его описание, как работать с этой библиотекой, копаться в исходниках? Если будет документация, то это будет продукт отличающийся от других анпакеров. Порог вхождения будет гораздо ниже, что увеличит количество контрибьютеров и пользователей библиотеки
22. minimajack 81 05.06.15 08:28 Сейчас в теме
(21) eugeniezheludkov, библиотеке от роду три дня, хотя фактически даже сутки не прошли с разделения. Так что документация будет, но пока это даже не альфа.
пока, как пример, можно смотреть на распаковщик...тем более как ее собираются использовать я не знаю. Будут вопросы задавайте.

фактически вся логика находится в двух файлах:
https://github.com/MinimaJack/com.minimajack.v8.cf.reader/blob/master/src/main/java/com/minimajack/v8/parser/Re­ader.java
https://github.com/MinimaJack/com.minimajack.v8.cf.reader/blob/master/src/main/java/com/minimajack/v8/model/Con­tainerReader.java
Логика пока такая:
создаем рутовый контекст -> создаем рутовый контейнер -> указываем в контексте реализацию ридера и просим распарсить данные.

все остальные файлы, лишь для удобства и скорости работы(работа в несколько потоков и прочее).

Если будет документация, то это будет продукт отличающийся от других анпакеров
- основное отличие - это в первую очередь библиотека. С документацией проблемы - возможно на выходных что нибудь подготовлю.
23. minimajack 81 05.06.15 09:30 Сейчас в теме
Основная страница
http://minimajack.github.io/v8Unpack4j/index.html
Java-doc api
http://minimajack.github.io/v8Unpack4j/apidocs/index.html

CI - нет сервера.
Метрики пока не нужны.
Тестов - пока тоже нет.
Java-doc - пока без описания, только вызовы и методы
24. ret-Phoenix 533 10.06.15 08:18 Сейчас в теме
(0) Из приятных мелочей: найденным v8unpack разобрать УП 2 не смог - слетела разборка. Твоей утилитой разобралось.
25. minimajack 81 10.06.15 09:22 Сейчас в теме
(24) ret-Phoenix, да...к счастью и сожалению она разбирает даже то что не должна
26. ret-Phoenix 533 10.06.15 12:07 Сейчас в теме
(25) Например? если конфигурация убита и позволяет ее разобрать - это явный плюс )
27. minimajack 81 10.06.15 12:11 Сейчас в теме
(26) ret-Phoenix, нет...такую конфиграцию не разберет...
я делаю упаковку из файлов и естественно тестирую ....
распаковал нормальную обработку -> упаковываю -> снова распаковываю уже упакованую своей обработкой
так вот у меня все ок - все распаковывается, все на месте до байтика...
а вот 1С упорно не желает пользоваться - видит зуб да неймет
Прикрепленные файлы:
28. minimajack 81 10.06.15 14:17 Сейчас в теме
В общем, получилось.
Распаковал упп -> запаковал обратно -> конфигурация открылась
теперь о минусах...
перепакованная версия открывается(сравнение объединение) дольше - необходимо время на изыскания...скорее всего дело в выравнивании, порядке данных и правильной сегментации
упаковка происходит в один поток, памяти жрет меньше, есть простор для оптимизации

выводы:
для внешних обработок подходит
для полноценных конфигураций пока нет

упаковывать аналогично распаковке -> только меняется местами параметры
распаковать: %file% %path%
упаковать: %path% %file%
29. minimajack 81 10.06.15 15:28 Сейчас в теме
Народ что дальше?
1. Нормальный разбор: нормальные имена, структура папок
2. Скорость упаковки, работы 1С с упакованным файлом?

голосуем https://github.com/MinimaJack/com.minimajack.v8.cf.reader/issues
30. RustIG 1920 14.06.15 21:43 Сейчас в теме
(29) зачем нужны упаковщики, распаковщики? я просто консультант и ни разу с этим не сталкивался, хотел бы узнать подробности
31. minimajack 81 15.06.15 07:54 Сейчас в теме
(30) Rustig,
В первую очередь для системы контроля версий, статического анализа кода и т.п.
http://infostart.ru/public/335018/
http://infostart.ru/public/118207/
32. minimajack 81 16.06.15 19:27 Сейчас в теме
(29)
Ввиду "оживленного" обсуждения, решил заняться разбором метаданных - "{0,{}}".
Инструментарий будет в отдельном проекте.
На текущий момент реализовано чтение: строки, числа, булево, массива, списка, хешмап, UUID, перечислений, объектов(с разбором полей). На выходе получаем заполненный экземпляр класса, со всеми полями. Пока реализовано только чтение; запись будет реализована позже. Запись скорее всего будет в XML формат - ближе к 1С-кому.

Проекты будут связанны "format.cf" - чтение файлов, "format.???" - описание классов, сериализация-десериализация.
Скорость - пока на второй план, много времени занимает именно кодинг классов.

Пример реализации класса - "описания" реквизита:
Скрытый текст


з.ы. задача кодерская-нудная, сидеть добавлять перечисления 1С, классы 1С, и сравнивать с сериализацией.
Evil Beaver; dmpas; awa; +3 Ответить
33. dmpas 419 16.06.15 23:34 Сейчас в теме
задача кодерская-нудная

ох, как я тут согласен :) сам пытаюсь на Ц++ классы для управляемых форм сообразить.

Вообще, тут бы лучше подумать надо хорошей кодогенерацией. Есть тучи XML-ек, которые можно навыгружать из 1С, по ним можно построить XSD (я пробовал trang, который, кстати, на Java), а по XSD уже нагенерить классов.
34. minimajack 81 17.06.15 15:38 Сейчас в теме
(33) baton_pk,
В Java все попроще...рефлексия - хлоп-хлоп и готово.

https://github.com/MinimaJack/com.minimajack.v8.bs.format - мини библиотека для разбора, в стандартной поставке чтение:
- строк
- чисел
- булево
- UUID
- классов
- Enum-ов
- List-ов
- Map-ов
Косяков еще хватает, но потихоньку буду править

https://github.com/MinimaJack/com.minimajack.v8.example.bs- пример для чтения рутового файла.
@V8Class
public class V8Root
{
    public Integer id;

    public UUID guid;

    public AnyData hash;

}
Показать
35. dmpas 419 17.06.15 15:43 Сейчас в теме
(34)
так рефлексия - это когда классы уже есть. а я говорю о том, чтобы эти классы хитрой обработиной создать из XSD-шек.
36. minimajack 81 17.06.15 22:08 Сейчас в теме
(35) baton_pk,
"Есть тучи XML-ек, которые можно навыгружать из 1С" - типа выгрузка конфигурации в XML?
37. dmpas 419 18.06.15 09:02 Сейчас в теме
38. minimajack 81 18.06.15 09:09 Сейчас в теме
(37) baton_pk, это борода.
Формат меняется, скорость выгрузки не ахти. Что делать в таком случае с внешними обработками и отчетами?
Я лучше потихоньку десериализую реальные классы и буду уверен, что все ок.
39. dmpas 419 18.06.15 09:52 Сейчас в теме
(38)
наверное, мы друг друга не понимаем.

я говорю вот, о чём: есть у меня выгрузка большой-большой конфы (чем больше, тем лучше). там куча файлов, к примеру, Catalog.Справочник1.xml, Catalog.Справочник2.xml, Catalog.Справочник3.xml.

Сами непосредственно справочники меня мало волнуют, мне нужны их общие поля. Они получаются при генерации схемы. Итого в XSD я вижу, к примеру, список полей, описывающих справочник, как объект метаданных:
Name
Synonym
Comment
Hierarchical
HierarchyType
LimitLevelCount
LevelCount
FoldersOnTop
......
Показать


и по ним генерю класс:
class MetaCatalog {

public string Name;
public multistring Synonym;
public string Comment;
.....
}
Показать


Главное в таком подходе - все сложные типы вроде HierarchyType или SearchStringModeOnInputByString можно будет сразу увидеть и сгенерить по ним Enum.
Сериализации тут нет, её вам всё равно пилить руками надо будет. Тут цель - быстро и относительно малой кровью разово создать всю эту тучу классов, описывающих метаданные, в которые вы потом уже будете сериализировать эти зловещие файлы со скобочками.

Но это всё пока у меня в теории, потому как до конечного результата я тут пока не дошёл.
40. minimajack 81 18.06.15 10:14 Сейчас в теме
41. minimajack 81 23.06.15 14:23 Сейчас в теме
пример использования совместно java-fx, com.minimajack.v8.bs.format и v8Unpack
Прикрепленные файлы:
dmpas; vikad; +2 Ответить
42. minimajack 81 26.06.15 08:07 Сейчас в теме
Объединил библиотеки для чтения под одним корневым проектом...старые репозитории пришлось удалить
https://github.com/MinimaJack/com.minimajack.v8.format
Описание:
http://minimajack.github.io/com.minimajack.v8.format/0.0.9/

http://minimajack.github.io/com.minimajack.v8.format/0.0.9/com.minimajack.v8.format.cf/
http://minimajack.github.io/com.minimajack.v8.format/0.0.9/com.minimajack.v8.format.bs/

Репозиторий:
	<repositories>
		<repository>
			<id>v8Unpack4j</id>
			<url>https:// raw.github.com/MinimaJack/com.minimajack.v8.format/mvn-repo/</url>
		</repository>
	</repositories>
JohnyDeath; +1 Ответить
43. v3rter 26.06.15 09:11 Сейчас в теме
Думаю, что "запакеров" нам не надо, иначе у троянов-вымогателей могут появиться дополнительные векторы атак.
44. minimajack 81 26.06.15 09:23 Сейчас в теме
(43) v3rter, кому не надо - тот не пользуется.
45. v3rter 26.06.15 11:10 Сейчас в теме
(44) Запакером? Проблема в том, что запакером могут воспользоваться те, кому не надо, и появится новый класс вредоносов.
Вот распакер - вещь нужная, особенно если портативный и консольный.
46. pumbaE 02.07.15 21:43 Сейчас в теме
(45) v3rter, найдешь на кухне нож - ВЫБРОСИ, а то мало ли чего.
artbear; JohnyDeath; so-quest; dmpas; awa; +5 Ответить
47. capitan 2541 12.01.16 19:27 Сейчас в теме
Rename 0cd0af71-a8c9-45a6-aa56-18ecdd9124b2 to MGNkMGFmNzEtYThjOS00NWE2LWFhNTYtMThlY2RkOTEyNGI
java.io.IOException: Синтаксическая ошибка в имени файла, имени папки или метке

и далее штук пять таких же ошибок

конфигурация состоит из одной формы

если пробую обработку

Rename copyinfo to Y29weWluZm8
java.io.IOException: Синтаксическая ошибка в имени файла, имени папки или метке тома

Что может быть не так ?
Кроме ДНК :)

Прикрепленные файлы:
cf.cf
epf.epf
48. minimajack 81 13.01.16 09:13 Сейчас в теме
(47) capitan, не может создать файл...возможно не хватает прав
собрал, проверил

java -jar com.minimajack.v8.cf.reader-0.0.1-SNAPSHOT-jar-with-dependencies.jar cf.cf ./сf/
Прикрепленные файлы:
com.minimajack.v8.cf.reader-0.0.1-SNAPSHOT-jar-with-dependencies.jar
49. capitan 2541 13.01.16 23:04 Сейчас в теме
Мерси.
Так работает.
С меня +
В файле unpack.bat на github похоже ошибка
@echo OFF
Echo Start parsing
@java -Xms1G -Xmx2G -jar com.minimajack.v8.cf.reader-0.0.1-SNAPSHOT-jar-with-dependencies.jar %1 ./unpacked/%1
два раза %1
minimajack; +1 Ответить
50. minimajack 81 14.01.16 08:03 Сейчас в теме
(49) capitan, спасибо, исправил
51. minimajack 81 14.01.16 09:26 Сейчас в теме
Пофиксил долгое открытие упаковоной конфигурации - надеюсь) в линуксе не тестил - но должно работать.
"Перешел" на 8 java
В общем все оказалось проще чем думалось - всего то надо было в алфавитном порядке(в одном регистре) записывать в фс 1С.
бинарник в шапке обновил...
52. Infactum 318 14.01.16 09:57 Сейчас в теме
(51)
А оглавление контейнера у вас одним цельным блоком в начале расположено? Просто для полного соответствия формату, который генерирует сама платформа, оглавление должно состоять из блока в 512 байт в начале контейнера, а все остальные блоки (если они есть) расположены в конце.
Можете посмотреть мою Python реализацию запаковки, там сразу не было проблемы с быстродействием перепакованных файлов.
53. minimajack 81 14.01.16 10:29 Сейчас в теме
(52) Infactum, да 512 байт...
entries = sorted(os.listdir(folder))

у вас изначально сортируется список файлов - потому и не словили)
54. Infactum 318 14.01.16 10:35 Сейчас в теме
(53)
Ну да, и это тоже. Я изначально хотел полного совпадения файлов добиться после перепаковки, поэтому писал все с оглядкой на структуру исходного контейнера, но в итоге параметры сжатия соответствующие подобрать не удалось :)
55. minimajack 81 14.01.16 10:42 Сейчас в теме
(54) Infactum,
btw у вас сортируется правильно-регистронезависимо? Как долго упаковывается конфигурация?
ffaac527-f33e-48bc-b09d-43245a025cd5
FFAAC527-F33E-48BC-B09D-43245A025CD5.0
ffaac527-f33e-48bc-b09d-43245a025cd5.1
56. Infactum 318 14.01.16 13:43 Сейчас в теме
(55)
Сортировка правильная.
Скорость работы это очень субъективный показатель как вы понимаете. Если хотите сравнить со своей реализацией и не устанавливать питон и т.п, то возьмите просто exe'шник из вот этой темы и проверьте на вашем компьютере и вашей тестовой конфигурации.
57. minimajack 81 14.01.16 14:22 Сейчас в теме
(56) Infactum, спасибо. Жаль у вас время работы не выводится
58. Infactum 318 14.01.16 14:31 Сейчас в теме
(57)
Просто тот исполняемый файл - это лишь демонстрация возможностей моего модуля, поэтому никаких "плюшек" там нет. Распаковывает/запаковывает по ключам командной строки и все.
А субъективно что скажете? Разница есть?
59. minimajack 81 14.01.16 14:37 Сейчас в теме
(58) Infactum, ваш не ест память, мой быстрее работает ) как то такие ощущения
а не...в принципе время сопоставимое
60. eugeniezheludkov 45 25.01.16 06:52 Сейчас в теме
Rename form to Zm9ybQ=  at com.minimajack.v8.model.ContainerReader$1.visit(Conta
inerReader.java:64)

        at com.minimajack.v8.format.V8FileSystem.iterate(V8FileSystem.java:100)
        at com.minimajack.v8.model.ContainerReader.run(ContainerReader.java:63)
        at com.minimajack.v8.threadpool.ExecutionWrapper.run(ExecutionWrapper.ja
va:36)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
java.io.IOException: Синтаксическая ошибка в имени файла, имени папки или метке
тома
        at java.io.WinNTFileSystem.createFileExclusively(Native Method)
        at java.io.File.createNewFile(Unknown Source)
Rename module to bW9kdWx        at com.minimajack.v8.model.ContainerReader.getOr
CreateFile(ContainerReader.java:49)

        at com.minimajack.v8.model.ContainerReader.access$000(ContainerReader.ja
va:16)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
86)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
64)
        at com.minimajack.v8.format.V8FileSystem.iterate(V8FileSystem.java:100)
        at com.minimajack.v8.model.ContainerReader.run(ContainerReader.java:63)
        at com.minimajack.v8.threadpool.ExecutionWrapper.run(ExecutionWrapper.ja
va:36)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
java.io.IOException: Синтаксическая ошибка в имени файла, имени папки или метке
тома
Rename module to bW9kdWx        at java.io.WinNTFileSystem.createFileExclusively
(Native Method)

        at java.io.File.createNewFile(Unknown Source)
        at com.minimajack.v8.model.ContainerReader.getOrCreateFile(ContainerRead
er.java:49)
        at com.minimajack.v8.model.ContainerReader.access$000(ContainerReader.ja
va:16)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
86)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
64)
        at com.minimajack.v8.format.V8FileSystem.iterate(V8FileSystem.java:100)
        at com.minimajack.v8.model.ContainerReader.run(ContainerReader.java:63)
        at com.minimajack.v8.threadpool.ExecutionWrapper.run(ExecutionWrapper.ja
va:36)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
java.io.IOException: Синтаксическая ошибка в имени файла, имени папки или метке
тома
        at java.io.WinNTFileSystem.createFileExclusively(Native Method)
        at java.io.File.createNewFile(Unknown Source)
        at com.minimajack.v8.model.ContainerReader.getOrCreateFile(ContainerRead
er.java:49)
        at com.minimajack.v8.model.ContainerReader.access$000(ContainerReader.ja
va:16)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
86)
        at com.minimajack.v8.model.ContainerReader$1.visit(ContainerReader.java:
64)
        at com.minimajack.v8.format.V8FileSystem.iterate(V8FileSystem.java:100)
        at com.minimajack.v8.model.ContainerReader.run(ContainerReader.java:63)
        at com.minimajack.v8.threadpool.ExecutionWrapper.run(ExecutionWrapper.ja
va:36)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Active tasks: 0
Time: 2
Показать


я так понимаю у меня не хватает прав на файловую систему ? (запускал под админской учеткой)
61. minimajack 81 25.01.16 13:26 Сейчас в теме
(60) eugeniezheludkov, да нет прав на фс
проверьте еще раз параметры запуска программы или напишите сюда
62. serge_focus 4 29.01.16 23:46 Сейчас в теме
Для файлов epf & etc - может быть и альтернатива да и то до выхода 8.3.8..
А с 8.3.7.1759 конфигуратор нормально сохраняет в файлы для GITa
63. farkhod 14 19.08.19 17:28 Сейчас в теме
Отвалилось с ошибкой

Exception in thread "main" java.lang.NullPointerException
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:19)
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:21)
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:8)
at com.minimajack.v8.code.impl.CodeProcessor.process(CodeProcessor.java:15)
at com.minimajack.v8.project.Project.unpackProject(Project.java:79)
at com.minimajack.v8.MainApp.main(MainApp.java:45)
64. minimajack 81 19.08.19 21:03 Сейчас в теме
(63)
read "main" java.lang.NullPointerException
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:19)
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:21)
at com.minimajack.v8.code.impl.RelativizeProcessor.process(RelativizeProcessor.java:8)
at com.minimajack.v8.code.impl.CodeProcessor.process(CodeProcessor.java:15)
at com.minimajack.v8.project.Project.unpackProject(Project.java:79)
at com.minimajack.v8.MainApp.main(Main

очень похоже на некорректные параметры или отсутствие доступа к файловой системе...
https://github.com/MinimaJack/com.minimajack.v8.cf.reader/blob/develop/dist/unpack.bat
первый параметр конфигурация, второй параметр - путь к папке в которую надо разобрать проект
65. Olenevod 35 20.11.24 10:17 Сейчас в теме
В чем причина почему может не собираться?
В cmd под админом (пробовал с мастер ветки собирать и девелоп)
Прикрепленные файлы:
66. Olenevod 35 20.11.24 12:34 Сейчас в теме
Еще момент: если использовать собранный jar файл в посте (48) то ошибка в недостаточности прав, хотя cmd запущен под админом
Прикрепленные файлы:
Для отправки сообщения требуется регистрация/авторизация