设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8707|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 L2 k1 u1 r6 k& k5 n) I% r
; `" P6 L+ P" t' x3 m) W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* q# B3 I' O, E$ L& W( Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( p7 ~8 l& o6 |; f
swarm.SignatureNotFoundException  h2 c( z5 Y0 A, _% O' M
        at swarm.Selector.<init>(Selector.java:76)  D0 ?0 b) z1 X' `5 d, ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 ~& F6 C, s4 ^) q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 e# d8 z/ t7 m' l& g* J6 U
6 y/ j9 b: e0 a1 O% R! k
  o* X9 q3 ]. A4 \. Qimport swarm.objectbase.SwarmImpl;; M! e% g. r9 a  ?) I. ^
import swarm.objectbase.Swarm;
# x! |4 ]5 ^5 T9 n( bimport swarm.activity.ScheduleImpl;0 T5 f5 i+ J- i, y
import swarm.activity.Activity;
6 }+ F' M# `$ K/ Simport swarm.activity.ActionGroupImpl;- F  N3 E' a+ u# r
import swarm.collections.ListImpl;9 G! v9 T8 E& s
import swarm.defobj.Zone;
* t% s( y. K9 nimport swarm.Globals;
0 R$ {( F0 Y. A' J7 vimport swarm.Selector;9 V# i5 c3 w+ l' c# ]# G
import swarm.activity.ActionGroup; / {, ~8 z* D$ r6 @$ k0 H
class Agent {
1 n* R2 K3 k7 e, u6 e- A        char id;
0 s7 P' H4 h# [0 v: a8 ?6 i( \' ^& O; {# Z
        Agent(char id) {* O2 W, O+ y1 h; R6 n$ S, r5 J
                this.id = id;
0 s5 L* G5 Y' u% Y        }
9 L- ^# X; W2 ^# A; V
9 \! }! M: `0 G  F        public void agentStep() {6 G3 Y# L0 q1 }  b1 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());( z7 N% `: l) X: Y9 k# H* V
        }# V7 g, t' P' m# B7 J! C) T
}
1 Q/ K; T5 N0 ~( b5 q# P+ }* K9 n7 o- {
public class ActionGroupDemo extends SwarmImpl {
" t7 Q3 `9 {2 r; n        ScheduleImpl schedule;$ }! }) k3 p$ {2 {: M% _
        ActionGroupImpl actionGroup;
9 L# W& N" A- Y5 ?; v+ W% Z        ListImpl list;$ R1 A. D6 Q9 W6 [- w
        char Id = 'a';
, }" y8 h0 B6 ?# f1 _# U$ w+ @/ ?  ]/ D$ h
        ActionGroupDemo(Zone aZone) {# x( S) G( S, {& j4 O  p. a
                super(aZone);3 u' x& v2 d) S% V
                list = new ListImpl(aZone);" ]1 V$ C; R: U2 m  P& J: C9 f
                swarmSetp();0 ~' z6 z3 f! b( s9 n# k* D! U" J
                actionGroup = new ActionGroupImpl(aZone);
+ w9 x! z: C9 n: s2 }+ R                schedule = new ScheduleImpl(aZone);: A7 V. _3 `5 F2 K+ b7 N4 L4 a" `
                try {. |4 G9 X4 L5 g' z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( j/ V- w5 x0 S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ J( i5 V$ j/ b
                        " }& m3 z7 C! h" U3 y5 v" h
                        actionGroup.createActionForEach$message(list, agentSel);" o3 U. b0 a# D9 d3 g5 F8 o. v
                        actionGroup.createActionTo$message(this, swarmSel);
- l! N+ c. i) R                        schedule.at$createAction(0, actionGroup);
: o4 Q7 q* i5 J" q; }/ c' }                        schedule.at$createAction(1, actionGroup);
8 ^# t; ~1 t' h+ t* C                        schedule.at$createAction(2, actionGroup);
1 y5 R4 U6 Q9 J( W7 Q/ S. }' H$ y2 Q
                } catch (Exception e) {
9 A, W; ^# ~( T# N; j  b  B                        e.printStackTrace(System.err);: v9 N$ F& h4 A- Q* P6 P
                        //System.out.println(e);) |1 d7 _7 N' C: `5 {
                        System.exit(1);
- d: L: y8 I" o                }
; a% b% U0 m; X( ?$ m: n, \+ V+ ^& _& f8 _

. d# K' r/ _" v7 y! J; b7 O7 C        }. b% {, ~. E* ]
; `1 o& j3 H. Y+ s% k& a% D
        private void swarmSetp() {
5 @, Z  f' V/ s( \' R$ z                list.addLast(new Agent(Id));- X  Z% ~- C0 r# Y) P
                Id++;) ]5 `! P3 M, V( G8 F* i
        }4 A# u3 o4 _) p2 v9 y' V8 z% v

1 J2 s$ H: s0 B" y, ?7 N( y; D0 `# e+ N        public Activity activateIn(Swarm context) {/ {/ D- t) F! p/ ]6 q
                super.activateIn(context);
- d' x  t# U) U  H- z  d; k                schedule.activateIn(this);* y  K1 m1 q  t6 q; i- `6 g1 v0 h  s
                return getActivity();; a+ T  ]( k+ r* x) K4 K- S0 _% G
        }
. |' }- u2 ^! K( @
! o! N( s1 G+ d& b8 x        public static void main(String[] args) {
' }# Q. s7 m1 U- y6 X( F( w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* k% E; f3 i2 e4 H- {
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 n1 Z0 _2 S3 ]! p                swarms.buildObjects();
" h  K; o; T( R# K/ M" B: C( r                swarms.buildActions();7 \2 a( x8 }2 h0 `
                swarms.activateIn(null).run();/ r. J- g7 E$ ]- X
        }7 ]* s- h* ~7 {0 e
& B$ m3 E/ B" i+ y; k9 C" p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-20 05:29 , Processed in 0.016869 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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