设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9323|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 J$ C% }  X6 j3 q/ l2 I3 z
0 v+ o5 x; }  k$ N7 \4 u( z) w" U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ L, \. r- f6 ~" H: E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: a- X+ I- [+ {, Uswarm.SignatureNotFoundException
2 K' [2 \2 m! T0 C( `' |        at swarm.Selector.<init>(Selector.java:76)
- P4 }1 Q4 u1 ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ `* f4 l. p4 ^6 V$ {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- n( y: @# R+ F

( g  c9 c0 P, O- v  W# Z6 p0 \7 A$ y1 S5 c' U
import swarm.objectbase.SwarmImpl;& \6 ?. D! m6 W+ {* g% i* S( }
import swarm.objectbase.Swarm;
3 |2 r$ M6 J4 ?& D; t0 r. Himport swarm.activity.ScheduleImpl;# r9 L1 c* n/ O6 n) Y6 U( D
import swarm.activity.Activity;( s1 o- C) H, U' W- f  ~- T5 _# L
import swarm.activity.ActionGroupImpl;
# u' n4 Q- Y6 @$ ^, Q8 Qimport swarm.collections.ListImpl;) |# R( _+ B3 y" @2 {0 [6 B  S
import swarm.defobj.Zone; + v/ L5 A$ |3 C( m8 X" l5 R
import swarm.Globals;
. X5 t+ D9 N/ f$ c$ Limport swarm.Selector;3 y* i$ \: q; |* q
import swarm.activity.ActionGroup;
7 {" K+ p6 L7 `, Kclass Agent {
4 p" T  q: b8 z! d        char id;% ]( K9 f( x( j% ^/ E

$ F6 U! s5 D; D% x, H/ S        Agent(char id) {7 i+ t+ N+ j( w# i, Y
                this.id = id;
' b0 f5 t; n3 B. d, a        }/ I" n& a6 r  o0 T; u( B7 p" L

9 j# }) w* s7 M- N        public void agentStep() {5 x" q8 J' p* u
                System.out.println(id + ":" + Globals.env.getCurrentTime());& ~1 ?! @3 u0 y. t( ^8 x6 U3 L
        }4 ^8 d( j8 u' `2 I6 E% h
}( [6 U) J8 R/ g

4 P2 I( `. I- f- ppublic class ActionGroupDemo extends SwarmImpl {( \4 E  ^0 \" s: {- T
        ScheduleImpl schedule;
  K! |9 @% P' d; x/ v% i0 E        ActionGroupImpl actionGroup;
8 S! R8 S" O$ g& T* @, ^        ListImpl list;& S: D* Z# d& |" e7 ]( k8 v, s
        char Id = 'a';
5 R8 U/ S: L; o% `0 X
. ?6 o- O9 V$ C; B% [        ActionGroupDemo(Zone aZone) {% y" J6 W3 Z8 R$ F! l
                super(aZone);
5 @) y9 z6 U- r4 s/ ~' E" F0 i0 }                list = new ListImpl(aZone);/ F/ {3 t% B' o: M, K6 c+ f6 `  l! x' U
                swarmSetp();% O" v3 q+ F* f) t) P
                actionGroup = new ActionGroupImpl(aZone);
' u7 g% Y2 [' I4 p                schedule = new ScheduleImpl(aZone);) Y) _% `! R) [/ x2 E* {5 _
                try {
. X" u1 T& B4 a6 U# ~' X                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" E( \2 g* p/ m  m4 J, C: }; c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& [, Y+ c/ G5 E0 f- H                        
2 N# I5 f* U- a( b9 X, N: W                        actionGroup.createActionForEach$message(list, agentSel);6 h/ S( b. B: s
                        actionGroup.createActionTo$message(this, swarmSel);& X- L7 q% K3 G2 B; I  f/ s4 j6 g
                        schedule.at$createAction(0, actionGroup);& J+ Q; W$ A+ j% K0 x
                        schedule.at$createAction(1, actionGroup);. R1 G: V4 Z9 E: v+ |" E$ h* i
                        schedule.at$createAction(2, actionGroup);
7 t' x7 e( a' {9 o8 ?! m! W
3 J7 H; ?) |' Y( |; I  O' [8 v. |+ p2 O                } catch (Exception e) {4 h1 B1 D& N: O7 c
                        e.printStackTrace(System.err);  {: C8 |; @7 K# E. ^0 W
                        //System.out.println(e);6 T2 [' m. `3 f5 o+ @0 d7 p
                        System.exit(1);
; P$ F6 q0 G4 `+ q2 {. f2 U- o' l                }4 D3 s& C# T6 N8 `4 J
4 u' `1 u/ `- Q* B+ Q: w
) ^# c: t* S* A+ O' R
        }# m  }2 S) H* n, W

, |$ t4 q) `! D9 J" k: c* N        private void swarmSetp() {
, e( c. F% l/ {2 ~  F2 ]                list.addLast(new Agent(Id));8 x( X. W; d9 U: W. h( }% U
                Id++;/ E( N6 ~0 E8 x# h
        }8 g5 M6 P9 V  l; l- W

- W' |7 C4 D/ \; @; k* z        public Activity activateIn(Swarm context) {
# Z, L' w7 j0 E                super.activateIn(context);, A, `1 d8 L; c  |# r/ j" `  N
                schedule.activateIn(this);+ ~* T& p& {3 \
                return getActivity();
3 b% ^9 _2 K8 P$ U6 q3 p        }
# e& w8 v% y; o/ j) E
- J  R9 k, N( M! P9 S2 A# o        public static void main(String[] args) {, Y6 B( B9 ^" Y/ Y% h6 p
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) @6 N' o2 d& W1 O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 N  i4 A2 T# P1 g                swarms.buildObjects();
' U% l7 T6 N' f- N7 T                swarms.buildActions();8 I! q3 U5 J3 o; @# a4 \' @2 Y: x- I
                swarms.activateIn(null).run();
6 ^% w, g  f9 V& d        }
( l: z  \1 `1 z& |
* n# h$ K2 j9 ?3 s5 F8 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-8 14:33 , Processed in 0.013719 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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