设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13330|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( y2 X8 c/ ^4 q- n( r
' e# R5 z5 W* T# b! R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% u* Q7 p2 ~& W2 A5 w$ o3 c, s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& _" q- \7 H  q3 k# m
swarm.SignatureNotFoundException+ s  c0 H+ B- M! n4 x
        at swarm.Selector.<init>(Selector.java:76)
5 X2 l" w% J, C% P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& C' A# R# C. h6 i$ Y' [        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 p2 w( ?, ]# i9 C, F1 V' p. M9 R$ b: T1 _7 l( q4 ~

+ h9 B; M4 Z* P- Pimport swarm.objectbase.SwarmImpl;  q0 f; N/ ?7 M9 b! Z7 E
import swarm.objectbase.Swarm;
( a! m: P/ r; x' qimport swarm.activity.ScheduleImpl;% A5 N# G1 h/ C% ?; y
import swarm.activity.Activity;
' g( ~' X' ^4 N3 P; zimport swarm.activity.ActionGroupImpl;
/ ?) P; g& H/ ?* K/ limport swarm.collections.ListImpl;8 k6 \! F5 P' i2 w
import swarm.defobj.Zone; % c4 {, C2 M% w
import swarm.Globals;4 _1 x, Z0 j. e
import swarm.Selector;* ?4 N+ w5 J! i# B1 h
import swarm.activity.ActionGroup;
8 V: c! ]1 q5 K5 j) ^class Agent {
6 f, O3 Z) u/ t, g+ _9 d        char id;
' h% d4 u$ H7 j7 @9 O  |
/ J4 G. |; E/ o0 u        Agent(char id) {, O7 s3 N8 n; X) m6 q
                this.id = id;' `$ Y& C* _8 Z: Q" u# G
        }5 ~5 r8 x4 W& F1 O. Z

6 b9 k: k; K) C" B        public void agentStep() {
2 g* i! P+ b. v                System.out.println(id + ":" + Globals.env.getCurrentTime());, q' v/ z1 X9 K- I  y7 Z
        }+ E$ @% v% {7 F' z' Q# u
}
- n/ i$ p1 L* K- T: A. U8 @2 o, {# j- H
public class ActionGroupDemo extends SwarmImpl {
" o( S$ W( y" B+ W0 E7 g; K        ScheduleImpl schedule;# ?# K9 L- ~' s1 r% b- P, d
        ActionGroupImpl actionGroup;
& }2 W; R! Q6 C3 f+ D. S        ListImpl list;$ m  R6 O7 P' A. q) S
        char Id = 'a';
4 l- U! S% ]$ r1 ^5 t( s
2 @9 F- ]9 h3 N3 {( Z        ActionGroupDemo(Zone aZone) {1 p4 c# n$ b: E# p  [6 c
                super(aZone);5 Z( I1 }8 V5 P' L
                list = new ListImpl(aZone);7 f0 W& }. b% w5 f) F' X' s0 F
                swarmSetp();/ t% u( P2 L' A1 e
                actionGroup = new ActionGroupImpl(aZone);
" a: \) O  l" E! @  I                schedule = new ScheduleImpl(aZone);  M* X0 h2 ~  ?8 t: X8 l4 q
                try {
' d% ^& L; \# L! o4 _' W+ g4 e7 j: A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 W8 ], g+ N& _5 Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ n' t% v( ?! D* |/ |9 E5 Y' S. ^
                        ! L$ B3 v- U0 X0 S9 Q. B
                        actionGroup.createActionForEach$message(list, agentSel);
! U0 F9 z  A: \4 ~3 v; M                        actionGroup.createActionTo$message(this, swarmSel);
* f# W; R+ L" ?8 C& q* f                        schedule.at$createAction(0, actionGroup);
& K1 r' x+ |! b                        schedule.at$createAction(1, actionGroup);) }; M& V% G% V% _! @
                        schedule.at$createAction(2, actionGroup);) x7 K& \, G- @$ d8 t* B9 s2 z
+ W3 C% H: O% v+ B5 H! _
                } catch (Exception e) {
8 v. P/ \; A9 N9 U                        e.printStackTrace(System.err);& l7 O2 j9 Q1 X3 I
                        //System.out.println(e);
& o  f' i' ]1 P" p! l& p& i$ V                        System.exit(1);
  {) |5 \) V+ [/ ?& ~) S                }
, r8 K  |- y+ [3 Z, M8 J( g, I6 r$ T( o. W, h( D  `  `' V

) \/ `  v7 ?+ L* c4 E        }( q3 X0 W- l. G: q% t! c. `

. ]  v0 F% Y  Z5 H0 }        private void swarmSetp() {; a' L% k1 S& u6 ^% E
                list.addLast(new Agent(Id));& k* f7 s3 `" G+ C$ U& {5 L) M
                Id++;
  i' w# \& O* g+ v) }9 {        }% _9 h( ^4 D4 I  W  Y3 X, Q
0 v: e4 q! d2 p
        public Activity activateIn(Swarm context) {
5 h# _2 ?3 u) {! l: ?                super.activateIn(context);: e  N: _4 U; n. P
                schedule.activateIn(this);; s( X! |, M: X, H
                return getActivity();9 T3 p* x9 q  O1 Y/ _* \- j
        }
1 B9 t  }' }* U# W+ F8 m, p" C, D, n" t/ z( E: E  z4 }$ z
        public static void main(String[] args) {  K) ^- n) x1 e0 m8 {. \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- R$ x2 N& X' X/ i5 h- l8 f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  X- u$ e- |- V0 W                swarms.buildObjects();6 O/ C8 c8 G2 g/ E% W
                swarms.buildActions();
, {% k' Y. z( B" v  e$ [  Q                swarms.activateIn(null).run();2 i- Z0 U8 q) E$ T2 M' M
        }
/ o9 d3 U. q) H1 j- F7 A) r
0 y1 y& P) i6 H! d}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-3 23:54 , Processed in 0.014210 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表