设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6559|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( u! X+ f6 D% B. }1 j1 {) n
% N: h" V5 ^9 h2 M3 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* p, I- E2 Y/ J* G7 f( U; \1 V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" j" N4 k, d5 Tswarm.SignatureNotFoundException  p/ m' o' b: T' q4 i5 n
        at swarm.Selector.<init>(Selector.java:76)' M8 a! L, @& Q8 e9 n3 I5 W
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  B/ A* U. h% Z  P  U1 W* t. `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ V7 W. d% \0 a+ `4 O( F
9 i! S" ?" S$ g8 s/ C$ r  T
' N, ?" _3 B- t3 n0 K5 rimport swarm.objectbase.SwarmImpl;4 I5 Y4 u: B+ f
import swarm.objectbase.Swarm;
  h+ d4 t; \( |. Vimport swarm.activity.ScheduleImpl;
8 _/ Y" q# T: Ximport swarm.activity.Activity;' O6 Q# g% n2 x5 c  X% u8 e
import swarm.activity.ActionGroupImpl;, m  M$ O, N5 F& y
import swarm.collections.ListImpl;/ n* P6 Q  X8 o
import swarm.defobj.Zone;
% [' p6 m2 X  A" yimport swarm.Globals;
2 t9 m2 Y/ h4 Bimport swarm.Selector;0 v/ e+ h# C  e: f% k6 J
import swarm.activity.ActionGroup;
! T/ R$ U( D" O# u$ z7 I+ }class Agent {! O8 x* f- [8 J) A5 Z/ ]
        char id;4 o6 [* P0 [1 ?/ V

  j1 ~$ d0 O  {. ?: V; l        Agent(char id) {
) f" E7 B$ o( B                this.id = id;1 i) d' Q4 [+ h+ i+ R% u
        }' e, x" X7 N. f# g! U
/ D6 Y8 b" A3 ~' S" }' G6 o! ]
        public void agentStep() {& c7 \% y$ c2 I! Y9 J
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: F% }  ~2 Z0 P% r, _        }/ _1 ~1 j  g$ @
}
# ~6 e0 {/ p8 X3 A; N8 V0 m8 y. |+ }/ Q
public class ActionGroupDemo extends SwarmImpl {6 k3 @( ]2 m! u# K9 C: Z2 P% w$ k
        ScheduleImpl schedule;( U4 c# f7 I1 w( c
        ActionGroupImpl actionGroup;
* D) d2 A0 n% C: T- ?# g6 U0 I        ListImpl list;7 K- Q! k9 S5 U; _, h( {6 I7 a- r
        char Id = 'a';
! p9 o) G4 @1 L; f2 M; S0 P& O  M0 D1 R
        ActionGroupDemo(Zone aZone) {% K% n7 _* M  H# p) o
                super(aZone);& Y* A0 n( Q; ]# Y8 b8 L6 D( }
                list = new ListImpl(aZone);
$ D4 A6 ~/ o) Q' _/ D  p                swarmSetp();
: e+ z, y, q* K! _  K9 p                actionGroup = new ActionGroupImpl(aZone);: u7 x5 @, t0 @7 o& [, t) X
                schedule = new ScheduleImpl(aZone);
% G' R' C) Y9 t1 B                try {) m, R: i. j$ a/ e# a# ?5 ~3 E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 u8 V+ L, s3 m/ w  r# a) G7 `
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- U5 J2 Q+ r4 e3 W) e" ]& h                        
" }; C" ~' p5 _1 W2 n2 t                        actionGroup.createActionForEach$message(list, agentSel);
; c/ L) ?% b& y: F                        actionGroup.createActionTo$message(this, swarmSel);- Y2 r& _* z  p$ G( P
                        schedule.at$createAction(0, actionGroup);
5 {7 z3 r* ^- A  Y+ r# m                        schedule.at$createAction(1, actionGroup);! m7 g0 f' j2 U, W* h0 L3 W& ~
                        schedule.at$createAction(2, actionGroup);& D! N3 b; A9 ]2 ^0 k7 L" @2 t

+ S/ E6 U* ^' _1 `# _                } catch (Exception e) {
* X$ `' C8 l8 J- y                        e.printStackTrace(System.err);
1 L! K6 ]7 d$ k3 y  E                        //System.out.println(e);
3 p. l, i& g1 o2 N2 W/ Y                        System.exit(1);6 b# ]# P1 Z* {  l. c
                }
1 i6 X6 V# @% W- M8 S7 l9 m3 e4 W: [5 Z! M- q- k( J

" v8 y" N! J8 G. l4 k! v        }% K) y0 o* N& H( m
: _7 ?, d& ]: O0 D( S
        private void swarmSetp() {
% t+ ?! K) [2 d' P                list.addLast(new Agent(Id));
2 t5 H" Y$ q7 p& ^7 G                Id++;
3 Y2 _+ e" b4 Y1 S5 q8 s. F1 ?$ [        }0 d. d8 C+ @% o! X/ _" _! H

" K, _& Z" H. G4 s$ N" Z6 E* L        public Activity activateIn(Swarm context) {1 V) b+ x# D. J* F% ~7 @8 q9 R% J
                super.activateIn(context);
3 A, {( ^, h' l: l% P                schedule.activateIn(this);
2 X; F. K& Y% u7 u                return getActivity();
, L3 C3 V; Y7 b) V" p        }
8 o# K5 B5 n) o  d3 p4 M' W# X; _, f" }1 Z: t3 x" q- J4 q
        public static void main(String[] args) {: h( `9 w3 o& n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) k! d  }5 ~1 _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% c3 L& p- _, U4 }2 R2 p
                swarms.buildObjects();
% l6 k- R* B2 a& Y1 J                swarms.buildActions();
$ V  m! w) \3 y3 Q: j$ w                swarms.activateIn(null).run();0 l) q4 C* v9 X  t  ^4 T* m) ^
        }
3 N8 ]) N, x7 |$ U4 K- @) P$ x- q2 d3 v2 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-1 12:08 , Processed in 4.092275 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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