Dependency between modules (gui and web)

I have this code:

public class CustomerBrowse extends AbstractLookup {
	@Inject
	private MenuService menuService;


	@Override
	public void init(Map<String, Object> params) {
		HashMap<String, Menu> hmMenu=menuService.getHmMenu();
		if(hmMenu.containsKey(this.getClass().toString())){
			Menu menu=hmMenu.get(this.getClass().toString());
			WebTable webTable=getWebTable();
			if(webTable!=null && menu.getHmOperation()!=null && !menu.getHmOperation().isEmpty()){
				
                for(Action action:webTable.getActions()){
					if(!menu.getHmOperation().containsKey(action.getId())){
						action.setEnabled(Boolean.FALSE);
					}
				}
               
			}
		}..

In CUBA Studio i have the follow error:
:app-gui:compileJavaD:\CubaExample\sample-sales\modules\gui\src\com\company\sales\gui\customer\CustomerBrowse.java:35: error: package com.haulmont.cuba.web.gui.components does not exist import com.haulmont.cuba.web.gui.components.WebTable;

I have to add compile dependency for “gui” module?

Hi,
Gui module does not depend on web module. If you want to use certain implementations of components then just move your screens to web module. Web module depends on gui and circular dependencies are not allowed.

Also if you don’t need to use WebTable specific features you can change WebTable reference to com.haulmont.cuba.gui.components.Table and I suppose that your code will work.

I change WebTable reference to Table and work.
Thank you very much.