设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12989|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 S& k: y$ N* R9 G, s$ Z8 R2 [
6 U5 ]( z# `$ C  M: U+ r- J& m' l, W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' V- E2 H6 c/ U. T0 N: _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* e# R* n; F$ c+ }$ J9 V* ~4 e3 ?/ [( Fswarm.SignatureNotFoundException& `! a* i6 p9 n
        at swarm.Selector.<init>(Selector.java:76)
3 m, ^# e2 K, k: U8 x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 C1 h5 ^, c: T1 O, I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) R" i2 j1 ?6 R" {& `* a% B4 D" `: D- m: P; g: y$ z
* C4 D0 ~, V8 R
import swarm.objectbase.SwarmImpl;
0 C( B. Q& S; g, Uimport swarm.objectbase.Swarm;; _# m* R8 r8 h
import swarm.activity.ScheduleImpl;
5 H2 n9 j% l* D( ?9 z8 g& nimport swarm.activity.Activity;
! W* Z  c" ^* V9 |' S4 f- Eimport swarm.activity.ActionGroupImpl;) I% W" {5 t& P7 l; n
import swarm.collections.ListImpl;
2 e& g5 K( `+ Y, T/ D6 {9 Jimport swarm.defobj.Zone;   H! I1 y1 Q5 ^3 {
import swarm.Globals;- E$ q: d; l6 ]+ j! B0 }
import swarm.Selector;  j( U3 j) p9 O" b* D
import swarm.activity.ActionGroup;
- o2 e% M: q# m5 o6 y* ?4 Bclass Agent {' H- A3 P, _8 z
        char id;& h( T( r: e+ k( ^; a

/ m* r# g: m  J/ a2 {8 V% H5 w  t        Agent(char id) {! v, z# f+ t" V: X1 g. S. H" Q( O& B
                this.id = id;
3 b! O1 I( K' W7 _" z% @        }
% _. o3 ?7 I9 K6 u# W. ~7 o" f0 z: Q9 X, t0 P
        public void agentStep() {
0 ?) N& a' \. @# ~; a. T( x; ~                System.out.println(id + ":" + Globals.env.getCurrentTime());
" e8 i. a0 N' `3 ]& `" i        }
. Q* L) i8 A; _" ?1 [4 d}
: S/ @* g# C/ s$ v2 c  G; k1 q
1 [4 ^. H7 W2 S1 ~! l& @public class ActionGroupDemo extends SwarmImpl {3 B- J4 z' O6 M$ H/ q3 g* ~, F+ \
        ScheduleImpl schedule;# k% B1 N$ Y1 Q* q
        ActionGroupImpl actionGroup;( k9 r' m& s0 w- k4 E- I
        ListImpl list;. Z- y+ @' q2 U0 O* _
        char Id = 'a';
" {* {3 W1 }( v  v0 e
7 Z7 A3 v( p0 s/ ~7 D        ActionGroupDemo(Zone aZone) {7 |: ?) e1 \; v
                super(aZone);
4 }+ r6 j+ D3 A/ ]' S1 B                list = new ListImpl(aZone);0 \/ q) g' @$ x- Z0 h+ o7 [
                swarmSetp();6 e4 Q& ^3 |# ^9 C. ]
                actionGroup = new ActionGroupImpl(aZone);
* Y+ ^: O- r8 v4 o                schedule = new ScheduleImpl(aZone);
* r; L/ N# U2 l1 ?                try {
- @7 X( a; ]% P5 Y: x! E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 F/ S$ P5 X. D; Z' S* }) A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ Z9 y6 ^6 h4 Y- `# I, z% z
                        8 Z2 V) h! t! W( n0 D- r  d
                        actionGroup.createActionForEach$message(list, agentSel);0 H' l- A& W9 ]! @2 ~! ?4 G* u
                        actionGroup.createActionTo$message(this, swarmSel);
/ N- x* U% m# Z                        schedule.at$createAction(0, actionGroup);
6 j2 I3 f( [. K8 ^                        schedule.at$createAction(1, actionGroup);  Q  F. Z0 l7 d% V, v$ K
                        schedule.at$createAction(2, actionGroup);1 I- c9 T. ]5 o+ j, G' p
( G7 j5 ?7 x* y% j2 \1 G
                } catch (Exception e) {
" e% x, V$ I  h                        e.printStackTrace(System.err);
+ q6 o" K/ d, R) q; X                        //System.out.println(e);1 s) t% u3 p8 `% @7 x
                        System.exit(1);
' y% N. G2 \# }5 Q                }
9 ~  ^4 P# u$ U# E
  `  s( i& G$ ~3 L  O2 n/ \
) F4 v9 y- Z8 g        }, U, G# s- n( k% V

: {; P. T, r: n. c2 Y0 E/ A        private void swarmSetp() {
0 q8 V4 d  ^+ {5 r, x; T$ _3 I* S  f                list.addLast(new Agent(Id));
- h& D; h4 w6 C                Id++;
" @- T& {! O- c9 z5 q/ E' i        }5 Z0 D) ?1 Q1 g* \: ]. }

" P3 S6 g' w  B4 d5 ~5 F) N        public Activity activateIn(Swarm context) {
% I4 q1 s' T0 T                super.activateIn(context);0 H! e0 j2 G! R
                schedule.activateIn(this);
. r1 d  N4 s2 c/ [4 |                return getActivity();: t- M! R, u; j1 i
        }9 F$ |# V4 @+ E& w& @! W) N
7 A- g( q4 h( p7 s+ i) W3 t1 G( d) @
        public static void main(String[] args) {
* ^/ ?! I' W1 B0 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 J6 ?  x' D% }/ |# G0 [$ y! ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 D( w% u# k' @2 _1 e- l& m# Q                swarms.buildObjects();1 k3 w: o8 h2 `! A
                swarms.buildActions();
: k! s+ \2 J  V* f                swarms.activateIn(null).run();
2 g% T2 |4 X6 i+ m  r( b3 Z: Z        }
, A1 {2 m( U" n% b1 l& d% t  B+ `
* P; ^) M8 A8 q8 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-25 06:06 , Processed in 0.019463 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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