设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11633|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! i. i: @) m% L5 r) G4 y  L8 o
( g- j7 f! N7 ?' o# L' j* W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ |1 d+ R! X5 a. F1 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 _' T8 \& h. K4 O! f9 w4 Dswarm.SignatureNotFoundException
6 \4 b* h$ b0 D) y( d        at swarm.Selector.<init>(Selector.java:76)
3 K8 n4 {% g" {6 R; S0 y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! R' B  |7 V1 ~  L8 X+ n' o4 p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# N$ R$ T, y, q% y
+ C. I" Y6 U: i- m: ]$ }
5 q% b! m. K% k- X7 S
import swarm.objectbase.SwarmImpl;
% b8 |- Q$ V9 @; nimport swarm.objectbase.Swarm;
4 Y  |7 ^5 o+ m5 T1 q  {$ L( U5 Himport swarm.activity.ScheduleImpl;
# Y; f! P  W  I& U6 ~1 g6 himport swarm.activity.Activity;* h& B4 `+ B- e! [( c4 D/ ]1 z
import swarm.activity.ActionGroupImpl;
" v2 u4 X1 v) J9 d# d( l* ]import swarm.collections.ListImpl;
+ W% t) y6 r. s  [  v3 C. U8 c+ kimport swarm.defobj.Zone;
+ j) P1 Q' Q0 p$ e# r0 Fimport swarm.Globals;
3 c0 w- U+ v3 K" Cimport swarm.Selector;5 X# d2 P. S8 ^6 F* {& I* {& T
import swarm.activity.ActionGroup; 6 w/ }& X. L; D
class Agent {
( o$ s/ i3 O, [9 P$ h        char id;
7 }7 F! @2 I% t" a
$ w& v/ o4 y6 n1 e4 A: K        Agent(char id) {+ K6 m7 [( W3 g$ m9 N; o2 s
                this.id = id;1 D3 m" [: U6 j' \: Z: F
        }9 d) v  B! f6 l4 a7 S

) }) U/ v+ Z- K# @: J! I        public void agentStep() {
7 X- V/ M1 e, A! ]                System.out.println(id + ":" + Globals.env.getCurrentTime());
: y5 S8 y7 H# T; j        }0 s6 v4 B, p) S8 B
}- f/ C) K) `8 i$ j5 r

% D5 m9 J. Q9 n& t* ypublic class ActionGroupDemo extends SwarmImpl {3 E3 K; H  j) d4 Z8 ~
        ScheduleImpl schedule;
* ~# ?) p, M6 X+ _        ActionGroupImpl actionGroup;: x0 a2 I, @  n. M, W0 V
        ListImpl list;; D! n& `. n. }  [) P' l
        char Id = 'a';
5 V7 }7 R( G4 a1 k  h# [
, ]- e# S9 h+ I: y+ J: |        ActionGroupDemo(Zone aZone) {, \' n% C( d2 C5 g8 P0 v
                super(aZone);7 g2 d0 H/ X4 T: P$ j3 M/ u
                list = new ListImpl(aZone);
! m5 g( O0 U5 F) w8 A                swarmSetp();
6 d: e2 Q; x0 q6 W  _# T, ~1 A2 F                actionGroup = new ActionGroupImpl(aZone);- [/ c) f. @: ^5 V1 ^
                schedule = new ScheduleImpl(aZone);& j0 F, v9 s! \% d( h2 ^
                try {7 i& m0 o2 s3 v0 |+ f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' \) r; y& P" u0 C- A- @) B& M3 B! {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; u' Z$ M, T0 z* x3 O
                        & b" ^# V3 N+ ?' ]7 @+ y
                        actionGroup.createActionForEach$message(list, agentSel);
0 M4 f2 a5 A2 x  ]                        actionGroup.createActionTo$message(this, swarmSel);4 j8 G2 n* F8 j4 G; e  U
                        schedule.at$createAction(0, actionGroup);% z2 |) t" S) n2 T% J3 h( J
                        schedule.at$createAction(1, actionGroup);" r% }! R* w/ l9 k2 D. K0 {" v4 _
                        schedule.at$createAction(2, actionGroup);$ U; y. v- P1 J7 k+ x
" l9 |" t. a5 p! P1 W2 z
                } catch (Exception e) {. D& ]# P# [$ K, P% z0 g# e
                        e.printStackTrace(System.err);  I1 {# }# t, z; P
                        //System.out.println(e);( d6 W  Y7 w0 u9 e
                        System.exit(1);
- F1 e3 [' Y, z. m2 T% z                }
, w0 f2 f% W5 b; A* r/ k4 n7 P# {) L: n% R# g! G- Y
- c  ]& H; E! Q4 @$ S5 d
        }
; o. q* k1 m, d/ }+ G% b0 I, \6 T+ |1 e& C
        private void swarmSetp() {
# }8 u/ m& u! A6 r7 W                list.addLast(new Agent(Id));
. t: T% t5 {0 H# g6 [- I  \/ T                Id++;
2 a  f. F$ T6 H1 U. {        }
) z4 L+ r. ~% i: N8 S
% j$ B1 Z; \7 Z6 x9 Z8 u        public Activity activateIn(Swarm context) {
9 C! b9 d+ r& M3 j- h) v                super.activateIn(context);: o  @+ _7 t6 w7 X& s7 ^* T: t
                schedule.activateIn(this);& A6 s* ^' V% T& f6 d0 p: D
                return getActivity();/ Z  c4 a" _) y4 N' t
        }/ Y2 l1 O0 f0 l* n/ g7 ^

$ U! Q3 a) [, N3 A        public static void main(String[] args) {8 J. |; f5 a% ~; R' V( j, I1 |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% H' |4 M# F5 N5 |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; |6 l! A4 }# d5 g                swarms.buildObjects();/ r6 K  ]7 b" w' K
                swarms.buildActions();& E% j% B0 c2 ~$ n- h
                swarms.activateIn(null).run();' [% [2 k3 `5 V0 d) i% s! D; m. ?
        }& K/ U# C6 z  q. s6 `
% l$ T. A8 e5 P: K1 t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 17:30 , Processed in 0.012986 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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