设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12504|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# R/ m7 u8 S/ T; X6 S1 l) [( i
9 y/ i* z# y- o2 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% T: U9 M) N! F% H: M' @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% K& c; \; y+ b( x* [* L
swarm.SignatureNotFoundException
% \2 u' F/ Y1 v7 }8 p        at swarm.Selector.<init>(Selector.java:76)
( C$ {1 P& w2 v2 W. g: F        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 u5 d- [3 o1 ?) M. n        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 V; g) p" t8 x
2 l4 V' E) n( q, s1 `

  K+ H$ l$ x8 S3 @- iimport swarm.objectbase.SwarmImpl;
( O* s# l8 m! [' n( m% y3 fimport swarm.objectbase.Swarm;7 j4 P! O  v) n, l, m* l! O
import swarm.activity.ScheduleImpl;9 w# Z6 w/ Z5 L+ M' O. k
import swarm.activity.Activity;" U' Q. v3 P* n* Q9 j0 \( K2 F% n
import swarm.activity.ActionGroupImpl;
3 ]1 J. a6 Q2 W9 @) fimport swarm.collections.ListImpl;; A9 \. R7 V) R) N
import swarm.defobj.Zone;
5 ]/ c$ F3 E9 T& mimport swarm.Globals;) z- y4 ?$ p, P/ N  N
import swarm.Selector;
+ G% Z7 ~; ^7 g7 pimport swarm.activity.ActionGroup;
( G/ R( D# C0 ]* H: W, g( l8 nclass Agent {
5 ~! C3 f3 Z6 p: ~# _        char id;
8 I7 l5 [8 V% p4 ?( E* [. ~/ |
- y! \6 m8 k1 l- b8 }        Agent(char id) {
3 k6 ~$ q3 ]6 f, k, x                this.id = id;
( S! h1 q. |+ @- i, K4 w        }
9 }- U1 G/ y$ T, o# M( C5 f
4 |1 Q4 z+ J1 K, k/ h        public void agentStep() {
) ?( j# k0 t& y                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 Z! z  ?+ Q& N8 m0 E        }- U5 N8 H0 Y' h, F5 f
}
- w  \; K/ O% @$ ^1 [, ^5 k. f; D
' p4 R% [7 d% jpublic class ActionGroupDemo extends SwarmImpl {
4 k) W7 x/ J# A7 w+ O5 r4 c( K        ScheduleImpl schedule;* S4 F- R8 ~! M1 g. ?% D6 o
        ActionGroupImpl actionGroup;
$ Z* p4 w9 v7 z- @9 d( ]/ M        ListImpl list;3 j  E/ _0 x  m- R9 }4 K8 J7 D
        char Id = 'a';9 e8 P6 o  x% h% \3 A, r

# a& i0 r: e, H) S8 F        ActionGroupDemo(Zone aZone) {
& M4 ?. h4 n0 \9 I2 q                super(aZone);
) p: L9 P" |/ y; N8 F$ a* q0 |                list = new ListImpl(aZone);
( p$ d" G4 D. E+ F                swarmSetp();
. X+ R+ W; |. H' C/ z8 R$ D* V                actionGroup = new ActionGroupImpl(aZone);
! F3 b; r5 b# e: Q! s                schedule = new ScheduleImpl(aZone);  H8 E. y6 H: ^
                try {
3 W/ U" ]. v3 s3 n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 I2 |" G8 t% K. I* p+ U( X6 W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 e( y; Z  S8 P6 Q/ ^2 b0 M* y
                        
& b  c1 m8 [/ P' E7 c( O7 R                        actionGroup.createActionForEach$message(list, agentSel);) j  U; B9 N, h& w0 k0 q
                        actionGroup.createActionTo$message(this, swarmSel);( k5 l/ Y1 x) q3 U% h
                        schedule.at$createAction(0, actionGroup);
) G$ Q4 A3 C" H" i- {                        schedule.at$createAction(1, actionGroup);5 ?5 B& Y3 N0 z% J8 E% d
                        schedule.at$createAction(2, actionGroup);6 j& @" T. r2 P- z5 l; q) s4 Q

3 k) x. `0 j$ [                } catch (Exception e) {
3 F1 T  ~: O4 }: [8 b8 Y                        e.printStackTrace(System.err);3 g* ~3 q1 V; t2 ~# x+ E; b9 o: N
                        //System.out.println(e);
, Q; p. b5 D& G. N4 k( n' `  q2 ?! o- h                        System.exit(1);
$ e7 b7 M. T& u. k                }
/ N; B1 E# t3 Z  S: s, Z
% J5 P& L- t2 u3 n# r) l* j! r
  m3 w3 X3 m' a: z        }
+ l; X9 b. u6 s$ o! @* M8 W, U; c) A5 Z2 X
        private void swarmSetp() {
# k+ y4 R" o1 c: f) `; O) v                list.addLast(new Agent(Id));
# O, ^0 D4 j! _: s: i& G                Id++;
5 R/ W+ t5 V: Y. E        }
4 [) p- ~# Z, ~
$ F7 R2 m9 t' M! ?1 b; E3 |        public Activity activateIn(Swarm context) {
/ f  z7 R6 Q4 I& j) K                super.activateIn(context);% O. U& N1 U. V' G& y
                schedule.activateIn(this);6 M9 K! V  q/ P/ H" `8 b' D
                return getActivity();% }1 a4 c3 r# H% g% X
        }$ |! F% v. W  y* _* M* Y: Q6 H$ R

. H' ~& S7 J$ N        public static void main(String[] args) {
( o& U4 ^# p5 ?( q. s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ e/ ^$ ?5 G! d& ~/ B  D$ h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# n- b  U& I4 l/ ^                swarms.buildObjects();6 u, ^3 q( o) \6 H5 ]& x( M
                swarms.buildActions();) {  @/ R# `" G
                swarms.activateIn(null).run();# A) u  T$ z9 `+ d8 K
        }/ }3 |2 S) }0 `  n

0 L' U2 R% k( S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-10 15:58 , Processed in 0.015522 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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