CSS样式并没有在Jira插件的项目选项卡面板中生效

时间:2014-12-11 15:22:56

标签: css jira velocity jira-plugin

我是Jira插件开发的新手,我正在尝试为JIRA(6.3.9)开发项目选项卡面板插件。

对于标签面板的样式,我在“resources / css / tabpanel.css”中有CSS文件

以下是CSS文件的内容:

div.status{
    float:left; 
    min-width:18%; 
    height:auto;
    text-align:center; 
    border:1px solid black; 
    border-radius: 5px; 
    margin:2px;
    background-color: #e6e6fa
}

div.issues{
	background-color:#add8e6; 
	margin:5px; 
	border: 1px;
	text-align:left
}

和速度文件的内容如下:

<div class="module">
    <div class="mod-content">
     <div id="statuses" class="aui">
      #foreach($status in $statuses)				
        <div id="status" class="aui" ><Strong>$status.getNameTranslation()</Strong>
    	  #foreach($issue in $issues)
    		#if($status.getId() == $issue.getStatusObject().getId())					
    		  <div  id="issues">			
    			...
    		  </div>
    	    #end						
    	  #end				
        </div>								
      #end
    </div>	
  </div>
</div>

atlassian-plugin.xml添加了这样的webresource:

<web-resource key="tabpanel-resources" name="tabpanel Web Resources">
    <dependency>com.atlassian.auiplugin:ajs</dependency>
    <dependency>jira.webresources:jira-global</dependency>
    <resource type="download" name="tabpanel.css" location="/css/tabpanel.css"/>
    <resource type="download" name="tabpanel.js" location="/js/tabpanel.js"/>
    <resource type="download" name="images/" location="/images"/>
    <context>atl.general</context>
    <context>tabpanel</context>
    <context>jira.general</context>    
</web-resource>

然而,CSS样式并没有在tabpanel中生效,我尝试添加 $ webResourceManager.requireResourcesForContext( “插件键:resourceskey”)

“requireResource(” pluginkey:网络资源键 “)”

但它似乎无法奏效。请帮助我理解出了什么问题。我试着查看atlassian答案页面,但没有帮助。

1 个答案:

答案 0 :(得分:0)

请确保您的插件密钥正确。atlassian-plugin.xml的顶部附近,您应该找到一行如下:<atlassian-plugin key="${project.groupId}.${project.artifactId}" ...>

project.groupId是pom.xml中的groupId,而project.artifactId是pom.xml中的artifactId。

因此,假设您的groupId为com.atlassian.plugins且您的artifactId为tabpanel,然后使用您的网络资源密钥tabpanel-resources(如此行<web-resource key="tabpanel-resources" name="tabpanel Web Resources">所示),生成的requireResource语句应为:

#requireResource("com.atlassian.plugins.tabpanel:tabpanel-resources")

这应放在Velocity模板的顶部,宏将把资源放入生成的HTML的head元素中。

可能的其他原因

#requireResource部分是一个velocimacro,可以通过Velocity模板中的webResourceManager对象访问。因此,如果它不起作用,请确保将JiraWebResourceManager的实例放入速度模板的上下文映射中,并使用“webResourceManager”键。