2016-08-30 1126 views
1

我有問題,嘗試使用絕對語法從一個不太文件引用另一個不太文件:lesscss @import以絕對路徑

以下文件中的位置與

$find `pwd` -name auth0.less 
/Users/panos/dcimsupport/struxureon/auth0/src/main/resources/css/auth0.less 

進口較少的文件B

@import '/bootstrap/less/so_colors.less'; 

現在,so_colors.less有位置

find `pwd` -name so_colors.less 
/Users/panos/dcimsupport/struxureon/auth0/src/main/resources/bootstrap/less/so_colors.less 

java.io.FileNotFoundException: File /Users/panos/dcimsupport/struxureon/auth0/src/main/resources/css/bootstrap/less/so_colors.less 

似乎lesscss就像被判入獄的css文件夾上面的失敗。我知道,如果我導入爲../bootstrap/.....less,它將起作用,但隨後我必須按照需要更新目錄,我寧願不要。還有其他解決方案嗎?有限制雖然,引導夾不能CSS文件夾下

我已經使用兩個

<groupId>biz.gabrys.maven.plugins</groupId> 
<artifactId>lesscss-maven-plugin</artifactId> 

<groupId>org.lesscss</groupId> 
<artifactId>lesscss-maven-plugin</artifactId> 

與配置如

<configuration> 
<sourceDirectory>${project.basedir}/src/main/resources</sourceDirectory> 
<outputDirectory>${project.basedir}/target/classes/resources</outputDirectory> 
<compress>true</compress> 
<includes> 
    <include>css/**/*.less</include> 
    <include>layouts/**/*.less</include> 
    <include>page/**/*.less</include> 
    <include>pages/**/*.less</include> 
</includes> 

+0

我假設' org.lesscs'可以嗎? – Todd

+0

你試過換成' org.lesscss'? – Todd

+0

這個錯字是從未使用的配置文件中提取的,我改變了它,但結果沒有改變。 –

回答

0

插件如何工作

biz.gabrys.maven.plugins插件將路徑/bootstrap/less/so_colors.less視爲絕對路徑。它不會將sourceDirectory設置爲根,因此它正在尋找/bootstrap/less/so_colors.less而不是/Users/panos/dcimsupport/struxureon/auth0/src/main/resources/bootstrap/less/so_colors.less。該文件不存在,因此該插件使用後備並將其視爲相對於/Users/panos/dcimsupport/struxureon/auth0/src/main/resources/css/auth0.less。這就是它尋找/Users/panos/dcimsupport/struxureon/auth0/src/main/resources/css/bootstrap/less/so_colors.less的原因。

org.lesscss插件的工作原理類似。


你的點子改善

我可以嘗試這樣的改進添加到我的插件,但首先我需要完成一些遷移過程。不幸的是,這意味着我可以在不久的將來發布這種改進(例如2016年底)。

作者不支持org.lesscss插件,也沒有其他人支持。


解決方案

現在你只能使用與../相對路徑。