设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11007|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   Y9 Y5 K1 j8 U6 H
* v' q" D" m; J7 `+ p0 ]8 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! g" a" R/ m- ~# t8 o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 z7 k1 h) Q$ @swarm.SignatureNotFoundException+ j3 I( Z" E7 s; q" O% c8 O
        at swarm.Selector.<init>(Selector.java:76)! l+ T5 G5 h' {* B' R) u* @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ H7 C) T/ e& i4 C% y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" P" F3 W* z: M# x8 t4 g  M/ A6 h& m* L& v% ]$ }

! A" C) a8 z9 N% p1 D, M) @% J! ?import swarm.objectbase.SwarmImpl;
# k7 f# v8 c2 J, Y- dimport swarm.objectbase.Swarm;, [( t; {( l% g% L
import swarm.activity.ScheduleImpl;0 m9 B, @, G  z
import swarm.activity.Activity;, z5 e( \" ]* T
import swarm.activity.ActionGroupImpl;, I' a9 U! T8 h
import swarm.collections.ListImpl;
  C  d/ u0 F0 Gimport swarm.defobj.Zone; + {; ~0 Y: i* t; y
import swarm.Globals;+ K* j8 h9 I+ V# e9 W; t+ D
import swarm.Selector;5 S# W. C* n0 C/ V5 Y2 z6 p
import swarm.activity.ActionGroup;
. @6 F# y3 y2 x  k  z5 \0 qclass Agent {
9 H% a9 y5 p4 T' N# o; b) ~        char id;, B0 i; b( S: q  n( R2 j
: j' Q. e  c+ f+ K, r
        Agent(char id) {! ^; p$ L, m: m
                this.id = id;5 R4 H" ?2 j( p1 c! q% @; Y
        }& P; j/ E+ O( W+ c

" b! h1 k! R; H: R8 e        public void agentStep() {
4 E6 v0 p+ {( p' i, q% s                System.out.println(id + ":" + Globals.env.getCurrentTime());$ X9 A$ V2 N7 q' P  Y
        }
- H" Y/ B& x3 i) r* v}
' @4 h: l- l' M3 S9 z" Z* Y' i
- u1 Q1 f$ V+ k. F" Jpublic class ActionGroupDemo extends SwarmImpl {. ]8 B: i; y. U/ Y3 F& V
        ScheduleImpl schedule;
) Z, }* O* a8 k) p9 X        ActionGroupImpl actionGroup;
+ E; C* p! L/ w# y% w, N/ s& m        ListImpl list;
, z: R8 c0 h. r: W( T' E        char Id = 'a';
: _3 n  v- J) {* e9 j/ ~! f7 Z8 d. u4 s1 x, q& ?
        ActionGroupDemo(Zone aZone) {2 R( S( U2 y, Y; N' `; ?8 ?
                super(aZone);2 E  C$ z9 y* t5 }0 e: G: F
                list = new ListImpl(aZone);% Z) n3 r2 l5 B, ?/ h
                swarmSetp();! L( G; g$ u# {7 A7 X: A
                actionGroup = new ActionGroupImpl(aZone);
! L4 S. [8 b) A: h7 p& T# L                schedule = new ScheduleImpl(aZone);
. e) d, M7 V  U3 y' R5 S                try {
0 t8 B* e2 D6 t1 U+ o5 }1 |. `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 \: I+ B0 ?2 B2 q- \: z$ x5 H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ r* N7 S: d( l! e& Z/ N# p
                        % f$ U8 h  Z- m) M$ y
                        actionGroup.createActionForEach$message(list, agentSel);+ Q8 Q" I7 _% I+ [: N" V% S, h
                        actionGroup.createActionTo$message(this, swarmSel);
( [7 A/ D* m" |# L/ V                        schedule.at$createAction(0, actionGroup);
5 w  `4 j9 y0 \  w* ~                        schedule.at$createAction(1, actionGroup);, X+ t$ e" H) \0 H; p
                        schedule.at$createAction(2, actionGroup);& U% D8 m6 h; P/ z3 ~; x4 O
( R( o. O6 ~1 p+ d. u: s% F0 r
                } catch (Exception e) {8 W8 e5 A* F8 _8 F
                        e.printStackTrace(System.err);* q% f3 D  o3 n* ~
                        //System.out.println(e);, h& D+ K5 N4 D: e
                        System.exit(1);
, s0 [( j  f2 F2 W7 X3 o0 p& X                }% |1 m' H. Q9 C: |' H* s9 V

: T! a3 C7 X, t; T; c8 |* J" Q2 B$ y4 v+ s3 A" w, I. ^7 l3 S9 G0 B' z
        }3 |& a. p; o7 D) }% h; h$ t
, \* u! ^+ J- X& I( A
        private void swarmSetp() {' }; F: b# }) Z. G% b+ v# w2 R
                list.addLast(new Agent(Id));
# ^" x1 G* o5 A. F# S$ x                Id++;
- w0 k( d$ Y2 H3 I& |/ F8 ^: ?        }
3 C& N1 k. `! Z( [8 U1 j
- [; x( S% E9 U        public Activity activateIn(Swarm context) {7 y9 s9 p3 W& v0 j# ?$ W
                super.activateIn(context);' t# C$ H% X6 l% A
                schedule.activateIn(this);. G$ Q8 n, e% h: k+ C5 l# U4 `) e3 l
                return getActivity();6 b) Y; w. ]5 R6 L2 S" |  t
        }$ W3 O6 e3 t% g" n3 t% Q& j5 J

( L+ d* U3 E/ F) `7 M: J2 s5 S        public static void main(String[] args) {
6 Q$ k! Q# q% [  ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 D# X% N5 Z1 s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ q( W' R0 ^4 I* O                swarms.buildObjects();& E& X- @/ @1 W9 K( S; _
                swarms.buildActions();
) [- q6 R$ |& K: Z. F7 _. U                swarms.activateIn(null).run();
7 l0 h; F$ [* f) P        }
( @2 c: t) l* A  {" e- b( z# o) L: F" Z! }0 M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 04:39 , Processed in 0.016388 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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