Problem: The new plugin uninstalled the old plugin, but both must be installed
Asked by Gustav Stresemann:

Hi,  

Our self-developed plugin works fine. Now it was time to modify it. We have successfully tested the new plugin and uploaded. We always have uninstalled the old plugin and upload the new plugin. In the transition phase must be installed both plugins at the same time. This causes a problem. When we upload the new plugin will be uninstalled the old plugin. How can we solve the problem? The plugin names are different, the version number are also different. Is there somewhere still an ID, which I must change? I hope you can help me.  

Thank you


Answers:
author: David Peterson
body: You will need to change the plugin key, set in either the pom.xml or the atlassian-plugin.xml file. That's the only thing that has to be unique for having multiple plugins.

comments: author: Gustav Stresemann
body: Thank you, it almost works. The new plugin is uploaded, but now I get an error message.  

"There were errors loading this plugin. There is more information in the logs.  

Cause:  
There was a problem loading the module descriptor. com.xx.xxxxxx.plugins.config.DefaultThemeService \<br/\> Can not overwrite an existing bean definition: theme Service"  

The old plugin still works fine. It amazes me that the new plugin now can not be loaded. Just because I pluginkey in the atlassian-pluginfile.xml have changed? Do you have another idea? its tricky....


author: Gustav Stresemann
body: I have solved the problem and I have the "Default Theme Service" and the "Velocity Helper" taken out. Why these two are needed? It also works without it. Does anyone have any idea or knows how I can integrate this yet?


author: David at David Simpson Apps
body: @Gustav Stresemann: I'm guessing here, but it sounds like you've used the Documentation Theme as a basis for a new Confluence theme.

In the Documentation Theme, the "Default Theme Service" and the "Velocity Helper" are important parts of the theme that allow the theme to be configured with or without content in the left hand navigation panel and in the page header and footer.

Here are the references to the items in the atlassian-plugin.xml file:

```
&lt;component key="themeService" name="Default Theme Service" class="com.atlassian.confluence.plugins.doctheme.DefaultThemeService"&gt;    &lt;description&gt;Services to store and retrieve theme configuration information.&lt;/description&gt;    &lt;interface&gt;com.atlassian.confluence.plugins.doctheme.ThemeService&lt;/interface&gt;&lt;/component&gt;...&lt;velocity-context-item key="velocityHelper" name="Velocity Helper" class="com.atlassian.confluence.plugins.doctheme.DocThemeHelper"                      context-key="docThemeHelper"/&gt;
```

In a more straightforward Confluence theme, these custom components may not be needed.

If you need similar functionality, try renaming the classes and also use different keys. For clarity, I'd also slightly change the descriptions too :)


author: Gustav Stresemann
body: Geben Sie Text oder eine Website-Adresse ein oder [lassen Sie ein Dokument ?bersetzen](http://translate.google.de/?tr=f&hl=de).  
[Abbrechen](http://translate.google.de/?tr=t&hl=de)\<input id="file" style="display: none;" type="file" name="file" size="40"/\>  

### ?bersetzung von Deutsch nach Englisch {#toc-hId-1481556856}

Hey guys,  

Thank you for your help. I've done it and it works now. The problem was that I had not changed all the paths and keys. I've learned a lot through all the problems. =)  

Thanks and regards

comments: author: David at David Simpson Apps
body: Don't forget to up-vote/mark as correct the answers that were useful :)


author: David Peterson
body: Yeah, I'm trying to get back into the top 10 :P Hehe....


author: David Peterson
body: Yeah, the problem will be the 'key' value for these. The actual implementation class name shouldn't be an issue, since class names don't cross plugin boundaries unless you explicitly tell them to. But the key names are set globally, so they need to be unique for every plugin. You will also then need to modify your .vm and .vmd files to use your new key names, so that if the old Documentation theme is uninstalled, your new theme will keep working.


Tags: app