<!DOCTYPE html>
<html lang="en">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-112407000-2"></script>
<script>
    window.dataLayer = window.dataLayer || [];

    function gtag() {
        dataLayer.push(arguments);
    }
    gtag('js', new Date());

    gtag('config', 'UA-112407000-2');
</script>

<!-- Google Tag Manager -->
<script>
    (function (w, d, s, l, i) {
        w[l] = w[l] || [];
        w[l].push({
            'gtm.start': new Date().getTime(),
            event: 'gtm.js'
        });
        var f = d.getElementsByTagName(s)[0],
            j = d.createElement(s),
            dl = l != 'dataLayer' ? '&l=' + l : '';
        j.async = true;
        j.src =
            'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
        f.parentNode.insertBefore(j, f);
    })(window, document, 'script', 'dataLayer', 'GTM-KS8HHSF');
</script>
<!-- End Google Tag Manager -->

<head>
    	<base href="/codewind/" />
	<title>Project commands: Tools for VS Code | Codewind</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta name="description" content="Project commands: Tools for VS Code">
	<meta name="keywords" content="tools, vscode, visual, studio, code, commands, project, Codewind Developer Tools for VS Code project commands overview, connection commands, restart, debug"/>
	<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
	<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
	<link href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:300,400,600&display=swap" rel="stylesheet">
	<!-- Bootstrap CSS CDN -->
	<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
	integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
	<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
	<link rel="stylesheet" href="css/styles.css">
	<link rel="stylesheet" href="css/docs.css">
	<link rel="stylesheet" href="css/blog.css">
	<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/themes/prism.min.css">
	

</head>

<body data-spy="scroll" data-target="#toc">
    <!-- Google Tag Manager (noscript) -->
    <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KS8HHSF"
        height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
        <!-- End Google Tag Manager (noscript) -->
    <div class="main">
    <!-- Bootstrap NavBar -->
	<nav class="navbar navbar-expand-lg navbar-light cw-banner fixed-top" aria-label="topnav">
    		        <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
            data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false"
            aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <a class="navbar-brand" href="">
            <img alt="Codewind logo image"  title="Codewind logo image" src="images/header/header-logo.svg" class="cw-header-logo" alt="">
        </a>
        <div class="collapse navbar-collapse justify-content-end cw-navbar-padding" id="navbarNavDropdown">
            <ul class="navbar-nav cw-navbar-nav">
                
                <li class="nav-item cw-navbar-item cw-header-link-docs">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="gettingstarted.html">Docs</a>
                </li>
                <li class="nav-item cw-navbar-item cw-header-link-news">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="news.html">News</a>
                </li>
                
                <li class="nav-item cw-navbar-item cw-header-link-news">
                    <a class="nav-link cw-nav-link cw-header-link-text" href="blog.html">Blog</a>
                </li>
                
                 <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  class="banner-image"  title="Codewind Github" data-toggle="tooltip" data-placement="top" id="cw_github_stars" title="..." src="images/header/github.svg"/></a>
                </li>
                
                <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  class="banner-image" title="Codewind Twitter" src="images/header/twitter.png"/></a>
                </li>
                 <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  class="banner-image"  title="Codewind Mattermost" src="images/header/mattermost.png"/></a>
                </li>
                <li class="nav-item cw-navbar-item cw-header-link">
                    <a class="nav-link cw-nav-link" href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"  class="banner-image" title="Codewind YouTube" src="images/header/youtube.png"/></a>
                </li>
               
               
                <!-- li class="nav-item cw-navbar-item" id="download-li">
                    <button onClick="window.location.href='https://microclimate.dev/download/codewind';" type="button" class="btn cw-download-button">Download</button>
                    <a href="https://microclimate.dev/download/codewind" class="nav-link cw-nav-link cw-download-link" href="#">Download</a>
                </li>  -->


                
                <!-- Smaller devices menu END -->

            </ul>
        </div>

    	</nav>
    	<!-- End Bootstrap NavBar -->
<!-- Bootstrap row -->
<div class="row" id="body-row">
    <!-- Sidebar -->
    <div id="sidebar-container" class="bg-light"  role="navigation" aria-label="sidebar">
        <!-- Bootstrap List Group -->
        <ul class="list-group sticky-top bg-light cw-sticky-offset">
            
            <!-- Start single page getting started -->
            
            
            
		      
			  
				<a href="overview.html" 
				    
				    
					
					class="bg-light list-group-item list-group-item-action">
					What is Codewind?
	            </a>
	            
			  
			
		      
		          
				
				    
				
				    
				
			    
				    
		        <a href="#getting_started" data-url="gettingstarted.html" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                <div class="d-flex w-100 justify-content-start align-items-center">
		                    <span class="menu-collapsed">Getting started</span>
		                    <span class="submenu-icon"></span>
		                </div>
		        </a>
		            
	            <div id="getting_started" class="cw-sidebar-div cw-sidebar-submenu collapse" style="">
		            
		            
		            
		            		
				    
				
				    
						
					    
						 
						 <a href="#vs_code" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                    VS Code
		                    <span class="submenu-icon"></span>
		                </a>
		                
						 <!-- 3d level - eclipse -->
		                <div id="vs_code" class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" style="">
		                
		                
		                    
		                		
						   
			                <a href="vsc-getting-started.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Installing Codewind for VS Code
			                </a>
			                 
		                		
						   
			                <a href="vsc-firstproject.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Creating your first VS Code Codewind project
			                </a>
			                 
		                		
						   
			                <a href="vsc-codechange.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Making a code change with VS Code
			                </a>
			             
			                
			           </div>
	                
	                
						    
						    
		            
		            
		            
	               
		            
		            
		            		
				    
				
				    
						
					    
						 
						 <a href="#eclipse" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                    Eclipse
		                    <span class="submenu-icon"></span>
		                </a>
		                
						 <!-- 3d level - eclipse -->
		                <div id="eclipse" class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" style="">
		                
		                
		                    
		                		
						   
			                <a href="eclipse-getting-started.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Installing Codewind for Eclipse
			                </a>
			                 
		                		
						   
			                <a href="eclipse-firstproject.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Creating your first Eclipse Codewind project
			                </a>
			                 
		                		
						   
			                <a href="eclipse-codechange.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Making a code change with Eclipse
			                </a>
			             
			                
			           </div>
	                
	                
						    
						    
		            
		            
		            
	               
		            
		            
		            		
				    
				
				    
						
					    
						 
						 <a href="#eclipse_che" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                    Eclipse Che
		                    <span class="submenu-icon"></span>
		                </a>
		                
						 <!-- 3d level - eclipse -->
		                <div id="eclipse_che" class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" style="">
		                
		                
		                    
		                		
						   
			                <a href="che-installinfo.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Installing Eclipse Che for Codewind
			                </a>
			                 
		                		
						   
			                <a href="che-setupregistries.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Adding an image registry in Codewind in Che
			                </a>
			                 
		                		
						   
			                <a href="che-createcodewindworkspace.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Creating a Codewind workspace in Che
			                </a>
			                 
		                		
						   
			                <a href="che-createfirstproject.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Creating your first project with Codewind for Eclipse Che
			                </a>
			                 
		                		
						   
			                <a href="che-tektonpipelines.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Configuring Codewind for Tekton pipelines
			                </a>
			                 
		                		
						   
			                <a href="che-odo-support.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    OpenShift Do (odo) support in Codewind
			                </a>
			                 
		                		
						   
			                <a href="openshiftregistry.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Adding the OpenShift internal registry with Codewind
			                </a>
			                 
		                		
						   
			                <a href="che-uninstall.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Uninstalling Codewind for Eclipse Che
			                </a>
			             
			                
			           </div>
	                
	                
						    
						    
		            
		            
		            
	               
		            
		            
		            		
				    
				
				    
						
					    
						 
						 <a href="#intellij" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                    IntelliJ
		                    <span class="submenu-icon"></span>
		                </a>
		                
						 <!-- 3d level - eclipse -->
		                <div id="intellij" class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" style="">
		                
		                
		                    
		                		
						   
			                <a href="intellij-getting-started.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Installing Codewind for IntelliJ
			                </a>
			                 
		                		
						   
			                <a href="intellij-firstproject.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Creating your first IntelliJ Codewind project
			                </a>
			                 
		                		
						   
			                <a href="intellij-codechange.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Making a code change with IntelliJ
			                </a>
			             
			                
			           </div>
	                
	                
						    
						    
		            
		            
		            
	           
	            </div>
			  
			
		      
			  
				<a href="remote-deploying-codewind.html" 
				    
				    
					
					class="bg-light list-group-item list-group-item-action">
					Deploying Codewind remotely
	            </a>
	            
			  
			
		      
		          
				
				    
				
				    
				
			    
				    
		        <a href="#using_codewind_remotely" data-url="" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                <div class="d-flex w-100 justify-content-start align-items-center">
		                    <span class="menu-collapsed">Using Codewind remotely</span>
		                    <span class="submenu-icon"></span>
		                </div>
		        </a>
		            
	            <div id="using_codewind_remotely" class="cw-sidebar-div cw-sidebar-submenu collapse" style="">
		            
		            
		            
		                <a href="remote-codewind-overview.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Overview: Using Codewind remotely
						</a>
						
		            
		            
		            
	               
		            
		            
		            		
				    
				
				    
						
					    
						 
						 <a href="#connecting_your_ide_to_remote_codewind" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                    Connecting your IDE to remote Codewind
		                    <span class="submenu-icon"></span>
		                </a>
		                
						 <!-- 3d level - eclipse -->
		                <div id="connecting_your_ide_to_remote_codewind" class="cw-sidebar-div cw-sidebar-submenu-submenu collapse" style="">
		                
		                
		                    
		                		
						   
			                <a href="remotedeploy-vscode.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Connecting VS Code to remote Codewind
			                </a>
			                 
		                		
						   
			                <a href="remotedeploy-eclipse.html" 
						        
						   		
							    
							    class="bg-light list-group-item list-group-item-action">
							    Connecting Eclipse to remote Codewind
			                </a>
			             
			                
			           </div>
	                
	                
						    
						    
		            
		            
		            
	               
		            
		            
		                <a href="remote-setupregistries.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Adding an image registry in remote Codewind
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="remotedeploy-projects-vscode.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Creating and importing projects
						</a>
						
		            
		            
		            
	           
	            </div>
			  
			
		      
			  
				<a href="workingwithtemplates.html" 
				    
				    
					
					class="bg-light list-group-item list-group-item-action">
					Working with templates
	            </a>
	            
			  
			
		      
		          
				
				    
				
				    
				
			    
				    
		        <a href="#developing_projects" data-url="" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                <div class="d-flex w-100 justify-content-start align-items-center">
		                    <span class="menu-collapsed">Developing projects</span>
		                    <span class="submenu-icon"></span>
		                </div>
		        </a>
		            
	            <div id="developing_projects" class="cw-sidebar-div cw-sidebar-submenu collapse" style="">
		            
		            
		            
		                <a href="checkingstatuses.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Understanding application and build statuses
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="importing-existing-projects.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Importing existing projects
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="project-actions.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Project actions
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="project-settings.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Project settings
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="referencing-files.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Referencing files external to a project
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="private-registries.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Developing with packages from private registries and repositories
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="offline-codewind.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Using Codewind offline
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="debugging.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Debugging in Codewind
						</a>
						
		            
		            
		            
	           
	            </div>
			  
			
		      
		          
				
				    
				
				    
				
			    
				    
		        <a href="#performance_monitoring" data-url="" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                <div class="d-flex w-100 justify-content-start align-items-center">
		                    <span class="menu-collapsed">Performance monitoring</span>
		                    <span class="submenu-icon"></span>
		                </div>
		        </a>
		            
	            <div id="performance_monitoring" class="cw-sidebar-div cw-sidebar-submenu collapse" style="">
		            
		            
		            
		                <a href="metrics-dashboard.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Understanding the Metrics Dashboard
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="performance.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Monitoring applications with the Performance Dashboard
						</a>
						
		            
		            
		            
	           
	            </div>
			  
			
		      
		          
				
				    
				
				    
				
			    
				    
		        <a href="#openapi_tools" data-url="" data-toggle="collapse" aria-expanded="false" class="bg-light list-group-item list-group-item-action flex-column align-items-start collapsed">
		                <div class="d-flex w-100 justify-content-start align-items-center">
		                    <span class="menu-collapsed">OpenAPI Tools</span>
		                    <span class="submenu-icon"></span>
		                </div>
		        </a>
		            
	            <div id="openapi_tools" class="cw-sidebar-div cw-sidebar-submenu collapse" style="">
		            
		            
		            
		                <a href="open-api-tools-for-vscode.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Codewind OpenAPI Tools for VS Code
						</a>
						
		            
		            
		            
	               
		            
		            
		                <a href="open-api-tools-for-eclipse.html" 
						   
						   
						   
						   
					    class="bg-light list-group-item list-group-item-action">
					    Codewind OpenAPI Tools for Eclipse
						</a>
						
		            
		            
		            
	           
	            </div>
			  
			
		      
			  
				<a href="troubleshooting.html" 
				    
				    
					
					class="bg-light list-group-item list-group-item-action">
					Troubleshooting
	            </a>
	            
			  
			
			


            
        </ul>
        <!-- List Group END-->
    </div>
    <!-- sidebar-container END -->
    <!-- MAIN -->
    <div id="content-container">
    		<div class="py-5 px-5">
    		    <div class="cw-docs-spacer"></div>
        		<div role="main"><h1 id="project-commands-codewind-for-vs-code">Project commands: Codewind for VS Code</h1>

<h2 id="create-a-new-project-or-work-with-an-existing-project">Create a new project or work with an existing project</h2>

<ul>
  <li>To create a new project, right-click the <em>Projects (Local)</em> item and select <strong>Create New Project</strong>, or click on the <em>+</em> icon beside the <em>Projects (Local)</em> item. You can also create a new project using the <strong>Command Palette</strong>.</li>
  <li>To work with an existing project, right-click the <em>Projects (Local)</em> item and select <strong>Add Existing Project</strong>, or click on the <em>link</em> icon beside the <em>Projects (Local)</em> item. You can also add an existing project using the <strong>Command Palette</strong>. Note that the project must already exist within the <em>codewind-workspace</em> folder.</li>
</ul>

<p>Right-click a project in the <strong>Codewind view</strong> to see most project commands. All commands are available in the <strong>Command Palette</strong>.</p>

<h2 id="commands">Commands</h2>

<ul>
  <li>
    <p><strong>Open app</strong>: Open the project application root endpoint in the system browser. The project must be in the <em>Running</em> or <em>Debugging</em> state, or the application server won’t be available.</p>
  </li>
  <li>
    <p><strong>Open Project Overview</strong>: Open an editor Tab that displays all of the Codewind information for the project. From this page, you can build, disable, or delete the project, and you can change the project auto build setting.</p>
  </li>
  <li>
    <p><strong>Open Container Shell</strong>: Open a shell, either <em>bash</em> or <em>sh</em>, in the project application container with <em>docker exec</em>. The project must have a container running. The VS Code integrated terminal needs access to your <em>PATH</em> environment variable so that it can run the <em>docker</em> command.</p>
  </li>
  <li>
    <p><strong>Open Application Monitor</strong>: Open the Codewind <strong>Application Monitor</strong> page for this project in the system browser.</p>
  </li>
  <li>
    <p><strong>Open Performance Dashboard</strong>: Opens the performance dashboard in the browser. This action is available only when the application is running or debugging.</p>
  </li>
  <li>
    <p><strong>Open Tekton Dashboard</strong>: This option is available to you only if you installed pipelines. Use this option to open the dashboard.</p>
  </li>
  <li>
    <p><strong>Add Project to Workspace</strong>: Add this project’s folder on your local disk to your VS Code workspace.</p>
  </li>
  <li>
    <p><strong>Build</strong>: Manually request an application build for this project. If the project has auto build enabled, this command should not be necessary because builds are triggered automatically with a code change. This command is also available in the project overview page. This command is equivalent to clicking the <strong>Build</strong> button in the Codewind <strong>Overview</strong> page.</p>
  </li>
  <li>
    <p><strong>Auto build</strong>: Enable or disable auto build for the project. This command is also available in the project overview.</p>
  </li>
  <li>
    <p><strong>Auto inject metrics</strong>: Enable or disable the injection of open metrics into your application at build time. This option provides monitoring capabilities that are then used by the performance dashboard. This option is disabled by default.</p>
  </li>
  <li>
    <p><strong>Enable or disable project</strong>: Enable or disable the project. This command is also available in the project overview.</p>
  </li>
  <li>
    <p><strong>Remove project</strong>: Removes the project from Codewind. The project folder can optionally be deleted from disk after removal. This command is also available in the project overview.</p>
  </li>
</ul>

<h2 id="logs">Logs</h2>

<ul>
  <li>
    <p><strong>Show all logs</strong>: Open a channel in the <strong>Output</strong> view for each of the project’s logs. To remove the output channel, use the <strong>Hide logs</strong> command.</p>
  </li>
  <li>
    <p><strong>Hide all logs</strong>: This command hides all the output channels that contain logs for this project.</p>
  </li>
  <li>
    <p><strong>Manage logs</strong>: This command presents a list of all logs for this project, which you can toggle individually.</p>
  </li>
</ul>

<h2 id="configuring-project-settings">Configuring project settings</h2>

<p>Project settings tell Codewind more about the specifics of your project and can affect the status and/or behaviour of your application. Project settings can be configured from the Project Overview page that is accessible from a project’s context menu, or you can find the project settings in the <code class="highlighter-rouge">.cw-settings</code> file of the project which you can edit from the IDE. Changes to these fields are automatically picked up by the workspace.</p>

<p>The list of supported project settings are:</p>
<ul>
  <li><a href="#context-root">Context root</a></li>
  <li><a href="#health-check-endpoint">Health check endpoint</a></li>
  <li><a href="#https-application">HTTPS application</a></li>
  <li><a href="#internal-application-port">Internal application port</a></li>
  <li><a href="#internal-debug-port">Internal debug port</a></li>
  <li><a href="#maven-profiles">Maven profiles</a></li>
  <li><a href="#paths-to-ignore-for-file-changes">Paths to ignore for file changes</a></li>
  <li><a href="#project-status-ping-timeout">Project status ping timeout</a></li>
</ul>

<h4 id="context-root"><strong>Context root</strong></h4>
<p><code class="highlighter-rouge">contextRoot: &lt;string&gt;</code></p>
<ul>
  <li>The value is used by Codewind to determine the project state</li>
  <li>The value is also used as the initial endpoint when the Open Application action is used</li>
  <li>If an incorrect context root is set, the project will be stuck in starting state</li>
  <li>If the health check endpoint is set, the context root will not be used to determine the project state</li>
  <li>If the value is not set, the default value is <code class="highlighter-rouge">/</code></li>
</ul>

<h4 id="health-check-endpoint"><strong>Health check endpoint</strong></h4>
<p><code class="highlighter-rouge">healthCheck: &lt;string&gt;</code></p>
<ul>
  <li>The value is used by Codewind to determine the project state</li>
  <li>Expected to be used for the application health check endpoint</li>
  <li>If a wrong health check endpoint is set, the project will be stuck in starting state</li>
  <li>If the health check endpoint is set, the context root will not be used to determine the project state</li>
</ul>

<h4 id="https-application">HTTPS application</h4>
<p><code class="highlighter-rouge">isHttps: &lt;boolean&gt;</code></p>
<ul>
  <li>This value tells Codewind to use the HTTPS protocol when Codewind detects the application status and also when Codewind launches the application in a browser.</li>
  <li>If your application supports HTTPS, set <code class="highlighter-rouge">isHttps</code> to <code class="highlighter-rouge">true</code>, and Codewind uses HTTPS instead of HTTP to detect application status and to open browser URLs.</li>
  <li>The default value of this setting is <code class="highlighter-rouge">false</code>.</li>
</ul>

<h4 id="internal-application-port"><strong>Internal application port</strong></h4>
<p><code class="highlighter-rouge">internalPort: &lt;string&gt;</code></p>
<ul>
  <li>Expected to be exposed, Codewind will not expose the port automatically</li>
  <li>This value is used by Codewind in conjunction with the context root to determine the project state</li>
  <li>If an incorrect port is set, the project will be stuck in starting state</li>
</ul>

<h4 id="internal-debug-port"><strong>Internal debug port</strong></h4>
<p><code class="highlighter-rouge">internalDebugPort: &lt;string&gt;</code></p>
<ul>
  <li>Only applicable to Microprofile, Spring and Node.js projects</li>
  <li>Only applicable to a local installation of Codewind</li>
  <li>Can be assigned to a non-exposed port, and Codewind will help expose the port for you</li>
  <li>If the project is already in debug mode, the project will need to be restarted in debug mode again in order to pick up the new debug port</li>
  <li>If the project is in run mode, the new debug port will be picked up and used the next time a restart in debug mode is done</li>
</ul>

<h4 id="paths-to-ignore-for-file-changes"><strong>Paths to ignore for file changes</strong></h4>
<p><code class="highlighter-rouge">ignoredPaths: &lt;string[]&gt;</code></p>
<ul>
  <li>A list of file paths that indicate a build should be triggered on file change events in relation to the paths</li>
  <li>Each item is expected to be a regex (<code class="highlighter-rouge">"*/node_modules*"</code> ) or a path relative to the project’s root directory (<code class="highlighter-rouge">"/README.md"</code>)</li>
</ul>

<h4 id="maven-profiles"><strong>Maven profiles</strong></h4>
<p><code class="highlighter-rouge">mavenProfiles: &lt;string[]&gt;</code></p>
<ul>
  <li>Only applicable to Microprofile and Spring projects</li>
  <li>A list of profiles can be set if a project requires additional Maven profiles to be used when Codewind issues Maven commands</li>
  <li>It is not advised to overwrite or remove the profile</li>
  <li>Maven profiles can be used in conjunction with Maven properties</li>
</ul>

<h4 id="maven-properties"><strong>Maven properties</strong></h4>
<p><code class="highlighter-rouge">mavenProperties: &lt;string[]&gt;</code></p>
<ul>
  <li>Only for Microprofile and Spring projects</li>
  <li>Maven properties can be entered in the form <code class="highlighter-rouge">key=value</code></li>
  <li>It is not advised to overwrite the property</li>
  <li>Maven properties can be used in conjunction with Maven profiles</li>
</ul>

<h4 id="project-status-ping-timeout">Project status ping timeout</h4>
<p><code class="highlighter-rouge">statusPingTimeout: &lt;string&gt;</code></p>
<ul>
  <li>This value is the total number of pings used by Codewind to determine if the project has timeout issues during starting state.</li>
  <li>Each ping takes 2 seconds. For example, if the value is set to 30, the timeout is 60 seconds.</li>
  <li>If the value is not set, the default value is set to <code class="highlighter-rouge">90</code> (3 minutes) for Appsody projects, and <code class="highlighter-rouge">30</code> (1 minute) for all other project types.</li>
</ul>

<hr />

<p><a href="vsc-commands-restart-and-debug.html">Next: Restart and debug</a></p>

<p><a href="troubleshooting.html">Troubleshooting</a></p>
</div>
        </div>
        
        
        <div class="py-5 px-5 text-right">
        Last update: Apr 15, 2020
        </div>
        
        
    </div>
    
</div>
<!-- footer row -->
<footer>

<div id="footer-div-mobile">
        
        <div class="row">
	        <div class="col-sm-12 text-center">
		        <span>Useful Links:</span>
		        <br/><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org">Eclipse Foundation</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/termsofuse.php">Website Terms of Use</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a><br/>
		        <a class="cw-footer-links" href="http://www.eclipse.org/legal">Legal</a><br/>
		    </div>
        </div>
        <div class="cw_footer_display_flex cw-footer-same-height cw-footer-center">
        
        <div class="cw_footer_display_icons row">
    		<div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="mailto:codewind-dev@eclipse.org"><img alt="Send us an email"  title="Send us an email" src="images/footer/email-icon.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  title="Codewind Twitter" src="images/footer/twitter-logo.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  title="Codewind Github" src="images/footer/github-logo.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        

        <div class=" cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  title="Codewind Mattermost" src="images/footer/mattermost-logo.png" class="cw-logo-mm" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    <a href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"  title="Codewind YouTube" src="images/footer/youtube-logo-dark.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center col-md-3 col-sm-6 col-xs-12">
            <div>
                <div>
                    
                    <a href="http://www.eclipse.org"><img class="cw-logo-eclipse-mobile" alt="Eclipse"  title="Eclipse" src="images/footer/eclipse.svg"/></a>
                </div>
            </div>
        </div>
        </div>
        
		</div>
		
    </div>
    
    
    <div class="row cw-footer-desktop" id="footer-div">
        <div class="cw-footer-left">
        		<div class="px-5 cw-font-12>
	        <span class="cw-font-14">Useful Links:</span>
	        <br/><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org">Eclipse Foundation</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/termsofuse.php">Website Terms of Use</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a><br/>
	        <a class="cw-footer-links" href="http://www.eclipse.org/legal">Legal</a><br/>
	        </div>
	        
        </div>
        <div class="cw-footer-border-right"></div>
        <div class="cw_footer_display_flex cw-footer-same-height cw-footer-center">
        <div class="cw_footer_display_icons">
    		<div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="mailto:codewind-dev@eclipse.org"><img alt="Send us an email"  title="Send us an email" src="images/footer/email-icon.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://twitter.com/EclipseCodewind"><img alt="Codewind Twitter"  title="Codewind Twitter" src="images/footer/twitter-logo.svg" class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://github.com/eclipse/codewind"><img alt="Codewind Github"  title="Codewind Github" src="images/footer/github-logo.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        

        <div class=" cw-footer-col text-center">
            <div class="cw-logo-mm" >
                <div class="cw-logo-mm" >
                    <a href="https://mattermost.eclipse.org/eclipse/channels/eclipse-codewind"><img alt="Codewind Mattermost"  title="Codewind Mattermost" src="images/footer/mattermost-logo.png" class="cw-logo-mm" /></a>
                </div>
            </div>
        </div>
        <div class="cw-footer-col text-center">
            <div>
                <div>
                    <a href="https://www.youtube.com/channel/UCnKCVK6RFDyHFqUmXlAhCHQ"><img alt="Codewind YouTube"   title="Codewind YouTube" src="images/footer/youtube-logo-dark.svg"
                            class="cw-logo" /></a>
                </div>
            </div>
        </div>
        
        </div>
        
		</div>
		<div class="cw-footer-border-right"></div>
		<div class="cw-footer-right cw-footer-same-height cw-footer-vcenter">
		<div class="cw-footer-eclipse-img cw-footer-same-height px-5 ">
	        
		<a href="http://www.eclipse.org">
		<img alt="Eclipse"  title="Eclipse" src="images/footer/eclipse.svg"/>
		</a>
	        </div>
		</div>
    </div>
</footer>
<!-- footer row END -->
<!-- Main Col END -->
 <!-- Jquery -->
<script
  src="https://code.jquery.com/jquery-3.4.1.min.js"
  integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
  crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
    integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>



<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
    integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>


<!-- Font Awesome JS -->
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/solid.js"
    integrity="sha384-tzzSw1/Vo+0N5UhStP3bvwWPq+uvzCMfrN1fEFe+xBmv1C/AtVX5K0uZtmcHitFZ" crossorigin="anonymous">
</script>
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/fontawesome.js"
    integrity="sha384-6OIrr52G08NpOFSZdxxz1xdNSndlD4vdcf/q2myIUVO0VsqaGHJsB0RaBE01VTOY" crossorigin="anonymous">
</script>

<script src="js/jquery.matchHeight-min.js"></script>
<script src="js/index.js"></script>
<script src="js/docs.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/prism.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/components/prism-docker.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.17.1/components/prism-json.min.js"></script>

</div>
</body>

</html>
 
 
 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/4.2.0/anchor.min.js"></script>
 <script>
$(document).ready(function(){
	
    anchors.options.placement = 'left';
    anchors.add('h1');
    anchors.add('h2');
    anchors.add('h3');
    anchors.add('h4');
});
</script>
 