Можно ли использовать исходные карты Dojo webjars для использования несжатых файлов?

Недавно я тестировал эту библиотеку:

https://github.com/webjars/dojo

и это здорово, так как я могу использовать додзё в своем проекте в качестве библиотеки maven. Однако проблема в том, что немного сложно отлаживать без несжатых файлов. Я знаю, что одним из способов использования несжатых файлов является переопределение файла dojo.js.uncompressed.js. Для этого я копирую файл dojo.js.uncompressed.js и вставляю его в папку:

веб-приложение/webjars/додзё/1.9.2/додзё

с тем же именем, что и dojo.js.uncompressed.js, а в строке 1012 я изменил:

        // if result is not absolute, add baseUrl
        if(!(/(^\/)|(\:)/.test(url))){
            url = baseUrl + url;
        }

by:

// if result is not absolute, add baseUrl
if (!(/(^\/)|(\:)/.test(url))) {
    url = baseUrl + url;
    // if the url begins with "webjas/dojo" and ends with ".js" add ".js.uncompessed"
    if (/^webjars\/dojo\/.+\.js$/.test(url)) {
        url += '.js.uncompressed';
    }
}

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

Итак, в основном мне было интересно, есть ли способ использовать исходные карты с веб-файлами dojo, чтобы избежать предыдущего взлома.


person Luis Vargas    schedule 10.04.2014    source источник
comment
Можете ли вы зарегистрировать проблему в WebJar додзё?   -  person James Ward    schedule 06.05.2014


Ответы (2)


Не уверен, почему вам нужно использовать веб-файлы, последняя сборка додзё доступна непосредственно из maven.

http://search.maven.org/#artifactdetails|org.dojotoolkit|dojo|1.9.3|pom

Помимо этого, если вам по какой-либо причине нужно изменить исходный код, вы можете загрузить несжатые файлы, внести изменения, заархивировать их и вставить zip-файл в свой репозиторий. В вашей конфигурации maven-war-plugin вы можете просто добавить зависимость в качестве наложения, и она будет развернута по выбранному вами пути:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-war-plugin</artifactId>
  <version>2.4</version>
  <configuration>
    <useCache>true</useCache>
    <overlays>
      <overlay>
        <groupId>org.dojotoolkit</groupId>
        <artifactId>dojo</artifactId>
        <type>zip</type>
        <targetPath>js/</targetPath>
      </overlay>
    </overlays>
  </configuration>
</plugin>
...
person Bal    schedule 14.04.2014
comment
Хотя это работает, я не могу получить исходные карты, а время сборки медленнее, чем при использовании Webjars. - person Luis Vargas; 14.04.2014
comment
Кроме того, я не могу получить версию 1.9.3, я могу получить только версию 1.9.1. Может быть, я теряю репозиторий - person Luis Vargas; 14.04.2014
comment
извините, последняя версия, которую я могу получить, это 1.9.2 - person Luis Vargas; 14.04.2014

Теперь можно использовать исходный код библиотек dojo, вам просто нужно использовать зависимость, которая говорит "-src", т.е.:

http://github.com/webjars/dojo-src

хотя есть версия "1.9.4", она содержит версию "1.9.3", поэтому вам следует использовать версию "1.9.3".

person Luis Vargas    schedule 18.06.2014