设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4134|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / F( u: |) n' l" T/ K. O3 d

* C4 {) U/ i* M! M9 Z% f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  k8 b/ y. Z7 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, i& n3 i! D5 }8 T# s0 k5 hswarm.SignatureNotFoundException
& U- ^2 j# q1 G4 x1 U        at swarm.Selector.<init>(Selector.java:76)
; w" P- u3 Z" y& P( C: r; ~& G2 O        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' R( h; q3 d9 D/ ~& j) l/ E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, _1 b4 G9 Z" {! h. a0 v2 o; J7 k' S" Y  ?& `0 J
. a+ {9 }* B  I) z7 ^
import swarm.objectbase.SwarmImpl;  ?$ _( x' c9 N9 c1 |
import swarm.objectbase.Swarm;
" V$ b1 O4 ?# @8 c! {! O0 u: Limport swarm.activity.ScheduleImpl;4 p6 ]6 d3 h) n& n
import swarm.activity.Activity;
; ~% E1 n/ ?  p) ?+ W/ g+ Simport swarm.activity.ActionGroupImpl;9 m+ R9 F5 I$ p' V7 G
import swarm.collections.ListImpl;* R5 n* U, W$ O' c* V& k5 `) l
import swarm.defobj.Zone;
! d+ T/ ^2 W6 W* ~6 |4 e/ l! u7 Aimport swarm.Globals;
9 E  V# C" K; F; W2 u! t7 a2 Bimport swarm.Selector;# }" _) @2 u" C* X
import swarm.activity.ActionGroup; ) y' m! I* O) N9 t) A) Z
class Agent {" m% ?" A6 i# r. L- S
        char id;$ q1 J' W7 V' A

6 t2 X( G) ?+ z% S$ ^! M        Agent(char id) {
% [( ^8 b% e$ m( ?7 M5 r                this.id = id;; ]# e- H; S  ]1 G- y* S' v
        }
3 h7 Q8 y" z( M+ v8 N5 B$ `8 f1 R# d* T. O- U% A" K0 K
        public void agentStep() {
( g- o+ [" z# C0 j" j( F' H' Z                System.out.println(id + ":" + Globals.env.getCurrentTime());. W) b( b8 Q3 U2 L7 T6 @! J& ?* C
        }3 E$ r- y* i& \" F
}' X* w  O2 G$ q3 x

$ _5 m, [; x+ m. y4 jpublic class ActionGroupDemo extends SwarmImpl {; P9 V1 F; ~$ T/ b0 E
        ScheduleImpl schedule;
/ F" ?6 f3 @1 }. q4 D6 u$ a" ^        ActionGroupImpl actionGroup;6 U6 c  @! z  d$ H) z
        ListImpl list;' d) j% m. n) N$ A. u. Y7 A
        char Id = 'a';- j2 O/ N6 ^" q0 L* r- z

; h; m# J; p4 B8 `4 L) d        ActionGroupDemo(Zone aZone) {
- z- \6 P( F0 q7 E" |9 g                super(aZone);
4 Y; H7 x& Q% e- b  e% z. z8 I                list = new ListImpl(aZone);. a: ^% |$ O! K" G8 i
                swarmSetp();* S) \9 }# N9 V) m) C
                actionGroup = new ActionGroupImpl(aZone);
6 m3 \; w" {3 y* A$ B7 W                schedule = new ScheduleImpl(aZone);  T2 z. V# S- y5 d( Z+ e
                try {
  n7 `; H, @( h, V5 L                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 o- J9 p" E4 V( a7 z% ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* t' G. X% d$ c' y" Z% ?
                        
* o* s' M3 q. P3 t* S                        actionGroup.createActionForEach$message(list, agentSel);
! u' \$ K. I9 p0 i8 y                        actionGroup.createActionTo$message(this, swarmSel);
7 @/ X3 H1 q; h2 }' p                        schedule.at$createAction(0, actionGroup);" G( }; H1 j- Z% E2 s
                        schedule.at$createAction(1, actionGroup);% L: }1 D+ C8 ^5 @* j0 Z' o
                        schedule.at$createAction(2, actionGroup);
' y: t* I8 A, s7 N3 R+ l2 T2 G0 q
( ]* c# W2 [& {) L5 B0 q                } catch (Exception e) {
6 B. Q9 C/ B. x7 L& Q$ j                        e.printStackTrace(System.err);
6 |& y8 T; g$ q" p3 P                        //System.out.println(e);! J+ R3 _* o# c7 w) J" \! i
                        System.exit(1);
7 ]( ~# Q$ ?) h8 a- {                }
  y% k3 z! C" p
6 t  S0 p1 c' j9 _( f. I# |) a' a" [1 c6 w" X
        }
" L1 U$ _% F2 e' Y) |/ w+ q" z$ a2 T7 t
        private void swarmSetp() {
5 g9 e) |$ ]' G/ v% }- u: `5 b                list.addLast(new Agent(Id));
4 e% z8 ?1 h  [# E- ?                Id++;" J5 x) H9 o& ~! T5 n( i! U% F
        }
4 T9 O: c. F. f1 D" r( v$ h% O8 O. V/ {6 W) B; G$ o
        public Activity activateIn(Swarm context) {4 v* z" q- F& n4 ?
                super.activateIn(context);
' l0 t8 Y1 {1 V( Y& x                schedule.activateIn(this);
; e3 E( ^, Y: t1 w& \1 E                return getActivity();
# [) B3 B- Y% J1 `! d  A; ^: _) R        }
/ V/ H3 p! B6 U3 Y0 h; N; J: W- z& q* i* F8 `$ I, R2 j
        public static void main(String[] args) {( ^$ w' q# y" x( ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 a& g- r, ?) T9 q4 R9 B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  `# V7 s5 y1 M' e+ `                swarms.buildObjects();
4 ^$ F/ W1 S" W. {' E: n                swarms.buildActions();
/ J/ I3 n4 q: H                swarms.activateIn(null).run();
, W0 e4 I, {& }7 r$ L/ r, T        }* A: L' `4 H2 R5 p# a6 }

- W  T. ]7 |) a  E/ W, D+ t# H}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-8 03:13 , Processed in 0.017056 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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