设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8945|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , g5 s; ]* }' @$ c& }* a6 B) g6 F

" {2 U# S1 m5 V# ]* h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; a. I8 |% V% I# W; q+ o$ d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: W9 y% h2 S- J/ Z  n6 ]swarm.SignatureNotFoundException+ b$ u& |% {4 n2 U/ c0 ^( W
        at swarm.Selector.<init>(Selector.java:76)
+ `2 r. e3 b" \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" l  R' V" G: e3 G" F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 @* p9 G/ a* D

6 D* p" |; g. ~) A
5 M9 i3 @. h" X# M/ iimport swarm.objectbase.SwarmImpl;
% Y: @! {/ }: W" |0 ~' k7 D% Jimport swarm.objectbase.Swarm;' |8 \( ~2 i4 C# }: [( g, G% p5 ^1 N
import swarm.activity.ScheduleImpl;* l0 [7 W  U- Z
import swarm.activity.Activity;
, X/ x( |! B" c- _" l- y9 K5 pimport swarm.activity.ActionGroupImpl;
6 E) H) G& N% F9 c1 V: E+ ^import swarm.collections.ListImpl;6 }/ C/ d/ i7 ]1 r
import swarm.defobj.Zone; ' o# _9 |7 N* [) l8 T
import swarm.Globals;3 c8 q5 {8 e7 ~& |$ Z/ |+ x
import swarm.Selector;, ^* W, d9 a; |: y: z
import swarm.activity.ActionGroup;
6 Y/ y% Z7 I& E+ w$ k. u0 Bclass Agent {% a" W, M+ e/ q% {
        char id;" {7 G% Z5 X+ N% a

( _; m. S& k; S4 S/ F9 F        Agent(char id) {6 I* |' H3 d# k8 r5 m
                this.id = id;
- k" q) C) Q( T1 S" Q$ D        }
# O" Q% V6 m# K' X2 S2 a  P9 X
3 o2 N$ M4 M( h3 W7 W- i        public void agentStep() {
% @) n" |7 e" {6 P/ _                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 _4 ^" ~* f! M. ?4 A        }1 L' u7 k3 O. l) ^: Z) C
}6 j3 k8 O6 m: T* D* E

$ |- Z& Q" _- f# Opublic class ActionGroupDemo extends SwarmImpl {4 c  `8 q. s" l. {1 l
        ScheduleImpl schedule;( u2 @0 }: B& s/ X! w: [3 Q: ?
        ActionGroupImpl actionGroup;
" C2 ^( `% l2 [- D. J        ListImpl list;
2 g7 r9 G' [5 ?        char Id = 'a';" A  T+ j3 i3 y
9 t) P1 I" Y, _
        ActionGroupDemo(Zone aZone) {
* F8 g. Z0 v# d: _& c; K( A6 S# ^8 C                super(aZone);
, U* f3 r- s4 u" U" |5 ~/ e                list = new ListImpl(aZone);
1 w5 c' k4 R- s0 h                swarmSetp();
, L% d1 P7 t/ K" S/ b9 o/ X+ ?                actionGroup = new ActionGroupImpl(aZone);7 A5 ?% m" D3 j/ s' C- R# D  b
                schedule = new ScheduleImpl(aZone);
* X% q2 H4 B* z- |5 u                try {
1 L( J) [# {' S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 j; C$ x1 r6 V' @* R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% [! ^. b) B% @  z7 B) ?# _
                        
. Q4 x/ H+ `" K1 e$ i& D" a                        actionGroup.createActionForEach$message(list, agentSel);
. w/ C# Z* a' [' _  ~3 l# j3 |$ c                        actionGroup.createActionTo$message(this, swarmSel);
3 y1 z" `, T8 \+ h9 t6 J5 Z! o                        schedule.at$createAction(0, actionGroup);
$ I8 J( B% ]* n" {# s% m0 i                        schedule.at$createAction(1, actionGroup);; @. G$ N( G0 t1 L
                        schedule.at$createAction(2, actionGroup);
7 m, S! n0 k; K! o7 p) P& P2 q4 \& U) F+ X7 n" L8 v$ \
                } catch (Exception e) {
6 Z# m/ _, k2 K) {7 I: \: B3 m! I/ ], y+ e                        e.printStackTrace(System.err);
# a# Y( F8 L; \+ Z                        //System.out.println(e);
3 m9 A2 H3 k' f                        System.exit(1);7 M# r. `! \! D7 m6 _/ p1 D
                }. n# j( k7 ?2 t2 S" R

9 j* f3 a+ B8 Y/ w
  c. x  D* G8 d3 e" U) w$ V! H        }, ^9 D' p9 j1 e1 m
* W: C4 I( D8 g4 T0 l6 B" `# Z
        private void swarmSetp() {
0 |$ `* ^% q6 v+ q                list.addLast(new Agent(Id));
, _1 h2 Z$ d+ c4 b- P; Z6 D                Id++;, u# ]1 B' l; ]/ i$ I
        }6 f9 D- e0 v$ y& Z8 U

. W! H( c$ c* O        public Activity activateIn(Swarm context) {, `/ a8 F5 L& r( k# N# D: f+ q
                super.activateIn(context);& e: x8 ?; q# z' R% p
                schedule.activateIn(this);" p5 O+ z" u8 a( C6 |  I$ g5 G  [% m
                return getActivity();
# c: |9 k6 F* M5 B$ P        }( ^8 \4 b2 B7 L: H; @

' @' A. |9 @4 v+ P- j        public static void main(String[] args) {
, k0 l, H# l4 P. I0 X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ u$ ]8 Q: f/ n' K5 V0 _& T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ n$ E. \, o0 S$ _) K                swarms.buildObjects();
) u/ q8 ?4 m0 X* ~  v                swarms.buildActions();/ p. u0 ?. a# {5 ]
                swarms.activateIn(null).run();
( B$ p" E1 k' f! ^0 t2 [        }
5 ]) l# ?. u* n' Z% x* C8 ~* w$ F6 R. T8 i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-27 16:39 , Processed in 0.017751 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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