设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12362|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 v$ @" n0 p. z8 T1 w0 D' }* \% }* {9 q# L2 P5 L. X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; O* d% A/ M- B, k  G7 K' W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ {( x6 ^) \6 E
swarm.SignatureNotFoundException; o% i" k+ `/ u
        at swarm.Selector.<init>(Selector.java:76)4 f- u: K9 U# z- Z$ T+ v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ L! g" y$ }3 D$ W$ Z0 }* P/ _9 }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 O9 \: J$ H! L

$ ]" Z/ m* L* s/ z; C: L* F7 ^, T1 k1 s% m1 I9 D0 Q9 o( q
import swarm.objectbase.SwarmImpl;/ N% Z9 Q  H: B0 y" D
import swarm.objectbase.Swarm;
# B9 a% R$ t2 c( C: s' vimport swarm.activity.ScheduleImpl;3 e- T9 W, T: C2 Y: {1 W' E: `( y
import swarm.activity.Activity;
' {7 \5 K+ N2 e' g+ Nimport swarm.activity.ActionGroupImpl;4 P) B9 L0 e) `* q9 J/ f3 N
import swarm.collections.ListImpl;
  O& v3 t9 M7 R( O  \/ kimport swarm.defobj.Zone; " l5 O" @2 l2 h5 J; M
import swarm.Globals;4 x% N$ Z$ m0 O2 g
import swarm.Selector;" `2 V$ r; M# k' v1 R) \
import swarm.activity.ActionGroup; 5 |- @) [8 u0 B4 K% F
class Agent {
( T; W- `6 ]# P% ]% u3 }        char id;' q* \7 u5 G* ~; A" [' }% A

1 D  H5 Y  P7 `4 ]2 N! A, _# ^2 t6 [        Agent(char id) {0 t# h/ M6 G+ o; v+ M% P5 _
                this.id = id;; d4 U& l6 s% A
        }. v$ ?: Z! |$ G5 I

+ h! m9 s' O: L& U) c: I        public void agentStep() {
5 Y9 s$ d. H: Q; j$ k                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 `+ @5 \# e4 c$ t/ ?5 l3 p        }  s2 ~+ T7 P: o/ e; K3 d
}
  e5 B! a) l5 B: {# ?! _" S3 I3 P1 Y& b* x0 w( q9 K4 J# {' w1 [
public class ActionGroupDemo extends SwarmImpl {* A( i$ c  n( v  c" @- ~
        ScheduleImpl schedule;* ]- v+ o2 @; G, T, A
        ActionGroupImpl actionGroup;4 I. ~; ]* E3 k# v4 v- x. A
        ListImpl list;! R. D( j( ^* E/ H# k7 R
        char Id = 'a';
9 |, j$ D  o1 Q* s' K; }8 P/ t0 T3 \( M8 C% f$ w& O6 h
        ActionGroupDemo(Zone aZone) {5 o8 Z* s% D8 G8 |* Z+ J$ a! d
                super(aZone);# f+ W; i: b) b2 i
                list = new ListImpl(aZone);
  X# l3 f2 |0 C0 ?$ o6 p                swarmSetp();  T9 y, g. S/ E9 o
                actionGroup = new ActionGroupImpl(aZone);
+ ?4 D" M- O' v$ o6 A                schedule = new ScheduleImpl(aZone);' m  D/ m7 G( J% m7 C
                try {
+ d/ R/ R2 K; J' C' z. l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 n' Q5 o: W: C* o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# K  _# P; J! F
                        
  P: u. O( Z& f2 Z# B; T                        actionGroup.createActionForEach$message(list, agentSel);3 [( V; M8 Z  J" ^* n
                        actionGroup.createActionTo$message(this, swarmSel);/ k1 t3 Q' B" \. |3 f& Q
                        schedule.at$createAction(0, actionGroup);
* j2 S# o3 |' Y8 b* `# z! R3 \                        schedule.at$createAction(1, actionGroup);0 S! O2 U& @& f' s
                        schedule.at$createAction(2, actionGroup);
8 y* G/ ^9 C6 \2 w5 O' H- l1 u2 ]% R$ q: x
                } catch (Exception e) {
* @, }/ x  d6 T) w0 i- z5 u                        e.printStackTrace(System.err);
' s  v( U; k$ k9 f6 h4 Y% g                        //System.out.println(e);% I- |& \! N- P' P) U% H
                        System.exit(1);
  z' n7 C1 g6 B                }9 p+ ^' `8 I. Y$ x
9 u' I  O7 L! |7 R( |

% [" g" Z" i( i$ y" [9 {        }
! G* b2 m1 C$ S+ F- S
. a1 f5 L6 b6 W1 W3 V7 X        private void swarmSetp() {
) e6 r3 L4 {5 D+ J5 {2 e                list.addLast(new Agent(Id));; t* ^2 h0 S1 [$ J: ?& @9 `; n
                Id++;3 R% F. L  [" c
        }& p) ~' x# c6 M7 m6 t1 l

$ N% a. r: ~0 X9 t% S' x* n1 z) Q        public Activity activateIn(Swarm context) {
2 i9 l2 B7 U9 J7 e                super.activateIn(context);  r: f8 M/ s  G0 V
                schedule.activateIn(this);
6 S& Z3 s6 _0 Q4 e$ p) j4 i5 y" @                return getActivity();0 T$ L2 a8 |( t* N& w' g, n& ^
        }2 |" u& z2 H. C6 H
7 O+ C. L( a- J  H: y; Z
        public static void main(String[] args) {
; U" G2 r/ U: A) m- J, q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  @; A' q2 a  p) n4 n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: `: _2 \: {$ B) ]                swarms.buildObjects();
% h7 f$ l, K. \; U                swarms.buildActions();- K6 ~& N/ R2 [' z% K  @  {
                swarms.activateIn(null).run();# j6 E  q0 }+ U( ]* r* e3 I
        }  S$ i4 x1 `0 ?9 c' O
; x" x% H; f$ g, x2 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 14:36 , Processed in 0.017139 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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